Hi there
I'm assuming he is on one nap per day is that right? 9am is really early for a nap, I see he sleeps well for it but it would then leave a very long time awake before BT. Going to be over tired can lead to early waking. It could be that if you gradually move the nap later each day to balance up the A times a bit more (they do not need to be exactly the same, some like a shorter first A but some a shorter second A, it depends on the LO) he may sleep better at night and wake a bit later in the morning, more refreshed.
Milk is a 'drink' rather than a 'meal' at this age and large quantities are not needed, large quantities might also make him too full to get the nutrients he needs from varied solid meals. As a very rough guide it would be 4 servings of milk/dairy per day but a serving size is small, 1 portion would be roughly:
half a cup of milk
or
half a cup of yoghurt
or
1.5oz cheese (a 1" cube)
I know mine took more than that, it's just a guide not a strict rule.
Perhaps if you served up breakfast first rather than the bottle of milk he would get a better breakfast. If there are other bottles/milk drinks in the day you could switch them for a snack instead. At this age often 1 or 2 milk drinks, 3 solid meals, 2 snacks would be common.