3 hrs sounds like a lot for a daytime nap at that age. Maybe reducing it regularly to 1hr or so might help. Is he in a cot or bed? If cot, can you put some books/toys etc in there when you go to bed at night so he has something to play with when he wakes up? Or if bed, are there toys that he could get out of bed and play with in his room?
When min were that age I wouldn't allow them more than an hour's nap and no sleeping after 2.00pm. Of course your son is up early so is probably catching up on sleep if he is sleeping for 3 hours during the day. You will need to try and adjust it. Mine were in bed by 7.00pm and usually woke between 6-7am.
I have a terrible nearly 4yr old DS who goes to bed at 7.00pm and has been waking at 5.30am with no sleep during the day and a full day at nursery. It is getting darker in the mornings here now and he has been getting up later the last few day - good job too as the clocks are going back soon.
yes I had that problem. The way to solve it is to gradually reduce the day time nap to max 45 mins (1/2 for my son at 2 and by 2 and a couple of months had stopped altogether) and do that consistently. You won't see a change until his daytime nap has considerably reduced for at least 2 weeks.
My son then started sleeping 7.30 - 7.30 and being much happier.
You have my sympathies, my DD is 2.3 and generally doesn't have a day time nap but still wakes at 5.30am. Despite every trick in the book she just seems to be one of lifes insomniacs. So it does sound to me like your DS is sleeping too much in the day so I would try and reduce his nap - you might have to put up with some grumpyness at first but he is sleeping so long in the day he must be catching up with sleep.
My problem was that I tried to reduce the nap and she decided that she could do without that sleep after all thanks mummy
Definitely reduce the day time nap - at his age he should be well on the way to giving it up altogether anyway. But don't despair if it doesn't make any difference - my DS has been an early waker all his life (between 5 & 6 am) and that's just the way he is! So just be prepared for the fact that things might not change...