I think Carmi's answer is a pretty good theory for the differences between Indian and Chinese restaurants. It makes sense to me that labor- and time-intensive Indian cooking makes Indian restaurants more expensive than quick-cooking Chinese ones. To add on to that, I'm wondering if the number of different spices and their costs plays a role, too.
Like Carmi, I haven't done any proper cost comparisons between the two, but I do cook a decent amount of Indian food. In my experiences, Indian dishes require a larger number of spices than many Chinese dishes do, and those spices tend to be more expensive. For example, an Indian curry might include cumin, coriander, turmeric, asafoetida, garlic, chiles, cilantro, nuts (almond or cashew) AND ginger. Having to purchase all thoses spices costs me a lot more than making a Chinese dish with a pre-made 5-spice powder combined with soy sauce.
Some Indian food requires spices that are pretty expensive to get (at least in the US): saffron, fenugreek and cardamom, for example, are pricey. You don't typically see those in Chinese cooking, but they appear fairly regularly in Indian food.
All of that being said, I do think that local economies play a large role. There are Chinese restaurants everywhere in New York City, but Indian restaurants are less common and more expensive. However, where I grew up in Massachusetts, there were almost as many Indian restaurants as Chinese, and I can get lunch at a new Indian place there for less than $5. Not sure there is a definitive answer for your question.