L.A.
Maybe you need to wake him up after 10 hrs of sleep. Move it so that he goes to bed later or gets up earlier. He probably just does not need that much sleep at night any more.
Then try to get him down for a nap at 12:30 or 1:00 and have him up at 2:00, but no later than 2:30. He needs lots of active activity in the morning and again when he wakes up from his nap..
Runniing, jumping, climbing. Keep him active. We used to get up from nap, have a small snack and then go to the pool in the afternoons.. Then come home and get ready for dinner with a quiet activity , eat dinner, have a quiet bath,then get ready for bed.. Usually they are pretty worn out at night.
If you get him up in the morning and give him active play time, he will be ready for lunch and then a nice nap in a cool, quiet room. Get this nap thing down before you move him to a toddler bed. 1 Thing at a time.