Bereishit Rabbah (56:10) tells us that Yerushalayim was named as a unification of Avraham's "Yireh" after the akeidah and Malkhitzedek (who was really Shem) who greeted Avraham after saving Lot who was called the king of "Shalem". Both Avraham and Shem merited 'the place' to be named after them i.e. Yireh Shalem, namely Yerushalayim.
In the Torah Yerushalayim is never mentioned as this name. It is called "hamakom asher yivchar", "sha'ar ha'shamayim" or simply "makom".
I have heard it said in the name of the Rambam that the avot didn't want to reveal the name/location of such a holy place lest the nations occupy it and prevent the Jews from using it.
What are the other reasons? And are there others (other than the Rambam) that discuss the reason?