I have heard this question too many times, really. And almost always, the questioner is interested less in seeking an earnest answer and more in making fun. It seems to most roti eaters that rice is a kind of boring food that makes you fat overnight. I used to get irritated with this attitude in the beginning - "How is it your concern what I eat? Am I asking you why you eat what you eat?". Then I graduated from irritation to sarcasm (if you can call it a graduation). I would almost come close to answering "Er.. with my hand. Isnt that how you eat YOUR food?". Anyway, I have now evolved to actually reasoning it out, at least in my head. This prevents me from reacting negatively to questions like this.
Rice is a wet crop, meaning it requires a lot of water to grow. If you have ever visited a rice field, even in passing, you would notice that all stalks are covered almost 75% in water, until they are ready to be harvested. South India is blessed with a lot of humidity and river water, which makes it very ideal for growing rice. Incidentally, rice happens to be the major crop in most (if not all) deltas and hence the staple food too. Whatever is available in adundance in an area, becomes a part of regular diet there. Another example is coconut. Even within a single state, like Maharashtra, fresh coconut usage in everyday cuisine increases as one moves towards the Konkan coast. When we are used to a particular kind of food from childhood, we tend to mostly prefer the same unless there are contra-indications (like rice being too "white" these days). Therefore, there is nothing superior or inferior about eating a particular kind of food.
There is an additional "poking tag" associated with South Indians, esp Tamilians - that they eat curd rice all the time, that all they need is curd rice and nothing else. If one paid any attention in geography classes, one would know that Tamilnadu is closer to the Equator than other states (except Kerala). The closer you are to the Equator, the more tropical it gets. People who generally live in tropical regions, accumulate what is called "Pitta" in Ayurveda. In layman terms, it translates to "accumulating more heat in the body". Now, every food has a particular property and hence it is advisable for people living in the tropics to add foods that soothe this "Pitta". That is why, traditionally, in many South Indian households (even in Andhra Pradesh), curd rice+onion is consumed even for breakfast. In peak summers, my mother used to mix milk and a little bit of curd in rice every night. I was made to eat this the next morning (as much as I felt bored of it at that time and longed for more interesting idlis and dosas) to keep heat boils, dehydration etc. at bay.
Google will tell you that an equal measure of rice and wheat have the same number of calories. If we can control the amount of rice we consume per day just as we control the amount of chapatis we consume, we can keep calories in control. In fact, in any Ayurvedic detox/weight loss program, the only cooked food they seem to allow for a while is Khichadi (rice and moong dal cooked together).
All foods are equally wonderful. It is a matter of pride for Indians that they have such a great diversity in cuisine and in the cooking process. I have seen that even the way rotis/rice are prepared varies across states and communities. Instead of appreciating the variety, it is sad that we focus on ridiculing habits that were formed/recommended for a very logical reason.