This question is based on my somewhat limited understanding and observation of places I have been to so I may be falling victim to a bad sample size. If that is the case, please alert me.
In the couple of years I have now been living in Japan and from the places I have been to, I have noticed that rivers, lakes and mountains often include the kanji 川、湖 or 山 in their names. However, it strikes me as odd that rivers (宇【う】治【じ】川【がわ】、淀川【よどがわ】、鴨川【かもがわ】 and 江【え】戸【ど】川【がわ】) are typically if not exclusively read using the Kun-reading of 川【かわ】, while it seems to me that mountains (比【ひ】叡【えい】山【ざん】、富【ふ】士【じ】山【さん】) and especially lakes (琵【び】琶【わ】湖【こ】、支【し】笏【こつ】湖【こ】) are typically read using the respective kanji’s On-reading. Is this a general rule and if so, why is it so?
For clarity: I am only focussing on the pronunciation of 川、山 and 湖; not any of the other kanji that make up the names I have quoted. There are probably further kanji that serve similar purposes (as in the English-language examples of Currumbin Creek versus Brisbane River) whose kanji I have yet to learn or notice. Feel free to include such ones in your answers.