Probably 2 hours is pretty much how long his first sleep cycle is. We go through cycles of deep and light sleep through the night. You can read more about it here
http://www.helpguide.org/life/sleeping.htm
(look under "Sleep stages: the sleep cycle")
If he learns to fall asleep by himself, it should get better. When putting him to bed, you could try rubbing his back to calm him down, but just before he falls asleep, leave him to fall asleep by himself. This way he -hopefully- will not expect you to rub his back when he wakes up. He is not fully awake at that point anyways and he needs to learn to go back to sleep from that point only :-)
You could also try to make sure there is no noise or distraction in the house to make him wake up around that time (I am assuming you are not gone to bed yet at that time and he may hear some noises or see light etc).