Inertia. Complex constitutional changes such as dividing or forming a new sovereign state are not easy. In general, if a constitutional setup is working well enough it won't fundamentally change.
No doubt if in 1948, Gandhi (et. al.) had negotiated for the creation of 30 independent countries in the territory of British India, we could today be asking "Why don't these countries unite?" Inertia can be powerful in constitutional politics.
Related to this is that to overcome this inertia, there needs to be a strong force to change. This can occur if a region has sufficient numbers of people who feel that they identify more with the region than with the sovereign state of India. However over many years, a strong Indian identity has been created. Often in adversity (first to Britain, later to Pakistan and China).
By contrast, the states of India, which are not defined by language, religion but grew out of the administrative regions of British India, and the various kingdoms. There isn't a strong and distinctive national identity attached to each state (although this does vary from state to state).
The consequence is that there aren't strong separatist movements. Each region feels it is getting something from the federation, and the benefits of independence are not worth the risks and losses.
The various states would each lose something. Indian Punjab, for example, would be more vulnerable to attack from Pakistan if it didn't have the support of the Indian Army. Uttar Pradesh gets simple trade routes through to the ports of Mumbai and Kolkatta. Kerala gets to be part of big free trade area.
The risks include conflict (from trade wars to actual wars) between the newly independent states, or being forced to negotiate less favourable trading arrangements with other countries.
Finally, there is no provision for secession in the Constitution of India. There isn't a clear process for a state to follow to become independent, except armed rebellion and UDI. This just adds to the risks.