The main reason for temperature not falling in cities like Mumbai and Chennai are they are nearer to sea bodies, which make them coastal areas. Typically coastal places will have a moderate climate throughout the year as sea surface absorbs heat slowly and also loses the heat slowly (specific heat of water is more) which influences the adjacent land temperature.
Main core reasons are as follows:
1. Mumbai and Chennai have maritime climate as it is along the shoreline of Arabian Sea and Bay of Bengal respectively. So the sea tones down extreme climatic conditions.
2. Most of the times Mumbai and Chennai get rain in winter which brings down the coldness & dryness to a large extent.
3. During daytime, sea breeze which blows on most of the days in a year, particularly in the afternoon or evening, brings down the daytime temperature of a coastal station.
4. Due to the high specific heat capacity of water, the presence of a large amount of water is able to modify the climate of the nearby land areas, making them warmer in winter and cooler in summer.
5. Because both the cities are located near coastal areas, they experience the continental climate. The breeze blows over the sea and land, as a result these cities experience less severe summer and winter.