B.K.
First of all, this is only temporary. Sleep schedules change as children grow. Like your son, my son was always the best sleeper until his 2 year molars started to come in (this could be what is causing the disruption). At the time, we had no idea they were coming in because they were still under the skin. We had no idea why he was waking up nearly every night until we noticed the first tooth. He would also be awake for 2 hours before he'd fall back asleep; it was so frustrating. Once all 4 molars came through, he got back on schedule and we got some sleep again (the whole thing probably lasted a couple of months). Every once in a while, he'll have a bad dream and wake up in the middle of the night. He's almost 5 and will still be awake for 2 hours before he can go back to sleep. Good luck. It's going to be crumby but just know this phase will pass.