Prakrit is not one language. I was careful to use it as 'Prakrits'. Given the formality of Sanskrit, I seriously doubt Prakrits can be considered its dialects. In fact, the relationship probably goes the other way- Sanskrit is a formalized version of the Prakrits that people spoke. In fact, the names are descriptive and are indicative of the relationship: Prakrit has the same root as 'prakriti' = 'nature', Sanskrit means 'refined'.
Sanskrit and Prakrits are different enough to not be dialects. It is perhaps a relationship more like literary Kannada and Tulu, which are wholly different languages with many similarities. (A relationship also shared by (Kannada, Tamil, Tulu, Telugu, Malayalam) and (Oriya, Bengali, Gujarati, Marathi) which are all wholly different languages belonging to two families (Dravidian former, Indo-Aryan latter), with similar roots, but do not share a 'dialect' relationship between each other or with any other extant languages)
Buddhism definitely had egalitarian pan-caste aspirations compared to Vedic doctrine. It is only natural that Buddha and others preached in colloquial languages, rather than literary. It is true at the same time, that later Buddhist scholars wrote many works in literary Sanskrit.
Edit: Also, I did not claim that Brahmins were not numerous. They were probably the same percentage of the population as today, which is about 5-10%, which is still a 'large section', but far from the majority.