I once heard the following explanation, although I don't remember where.
We have two loaves of Challah on Shabbos to commemorate the double portion of Manna that came down for Shabbos - each morning a portion came for that day's Manna, and on Friday, double fell.
So, the Manna for Friday fell, followed by the Manna for Shabbos. Thus, the Manna on the bottom was Friday's Manna, and the Manna on top was that of Shabbos.
Friday night, we want to take the loaf of bread that corresponds to that day's Manna, which was the Friday Manna, which was on the bottom. Shabbos day, the loaf of bread that corresponds to that day's Manna was the top. So Shabbos day, lunch and third meal, we use the top, whereas Friday night we use the bottom.