Is there anywhere he can race around? Or maybe hide food in packing boxes, containers and under things and let him find them?
I'm amazed your puppy can carry on going for two hours at three months!

Toq wouldn't have been able to. When Toq was that age, we'd go on two hour walks, but carry him for most of it. Does your pup ever sit down and you have to carry him on the walks? If so, he's walking way more than he can cope with. Imagine walking a child until they sat down, unable to go any further!
If you do want to over-walk him, can you do it off-lead? Practice 'comes' in the living room or garden until you're confident he'll recall and then let the pup off-lead in a field, park or forest away from the road or bike trails. The puppy is then running on soft ground and setting its own pace. It's easier to tell when he is tired and soft ground does less damage to joints!