Since it was the angel that instructed Hagar to call her son by the name Yishmael, how come it was Avraham who named him (16:15)?
Ramban #1: Either Avraham incidentally called him Yishmael or it was through Ru'ach ha'Kodesh. 1
Ramban #2: Hagar, in her capacity as a concubine, felt uncomfortable to name her son formally, so she told Avraham what the angel had told her, and Avraham carried out the angel's instructions.
Seforno (on Pasuk 15): The name Yishmael was appropriate from the point of view of Hagar, as the angel explained to her; and also with respect to Avraham, who later prayed to Hashem on his behalf (17:18), and Hashem answered him favorably (17:20). 2
He should have been called Shama'el, "for Hashem heard (Shama) her affliction" (past tense)!
Moshav Zekenim: He was called Yishmael, for Hashem will hear his voice in the future [when he will be close to death from lack of water] (21:17).
"You shall call his name 'Yishma'el,' for Hashem has heard your affliction." Our sages write that Hashem made His name part of our name, Yisrael, so that we would never be lost among the nations. It seems from this verse, however, that His name is a part of Yishma'el's name as well?
Maharal (Netzach Yisrael, Ch. 10, p. 63): Yishma'el's name only tells us that Hashem heard the prayer of Hagar [but does not indicate a Divine relationship with the nation descended from her]. "Yisrael" means, "for you struggled [both] with the G-dly and mortals" (32:29); this shows a G-dly aspect in the nation itself. 1
Additionally, unlike in the name "Yisrael," the "Tzeirei" in Yishma'el's name is under the Ayin, while the Alef is silent; thus the name of Hashem is not fully pronounced (Ben Yehoyada to Megilah 18).
QUESTIONS ON RASHI
Rashi writes: "Hinach Harah [means] - when you return, you shall conceive [again]." But perhaps the angel refers to her existing pregnancy?
Gur Aryeh #1: Hagar had already miscarried the first pregnancy , due to the Ayin ha'Ra (Rashi to 16:5).
Gur Aryeh #2: Hagar would already be aware of her first pregnancy, and the angel would not have had to inform her of it.
Rashi writes: "[The verb] v'Yolad't is equivalent to v'Yoledes." What is Rashi explaining?
Gur Aryeh: We may have misinterpreted the verb as past-tense (v'Yalad't - "you gave birth"). Rather, it is in present tense, "You are giving birth [to a boy]."
Rashi writes: "ve'Karas Shemo - this is a command." what is Rashi clarifying?
Gur Aryeh: Rashi demonstrates that the verb is a command, (despite that the Reish has a Kamatz, and the Alef is silent,) for we find a similar verb in 17:19.