But why wouldn't he let us know that he had to go out? And I think what we really don't get is why he felt he had to go that bad after having been out just 2.5 hours prior....
Maybe he doesn't how how to let you know that he needs to go out. Many dogs give subtle signals that many people don't notice. When Zoey needs to go out, she doesn't grab a leash or sit at the door or anything grand - she will usually just lay down somewhere near it and look at it, and we know her enough to know which looks mean 'let me out please'...
One thing you might want to consider is bell training. Take a bell, tie it to a rope, and attach it to your doorknob. Everytime you take crede out, stop at the door and either pick up his paw or gentle guide his muzzle to make it hit the bell, then take him outside. Soon he will learn 'when i ring the bell i go outside'. Once he figures that the bell means outside, he will probably test you by ringing his 'new toy' constantly. It will get annoying, but you have to take him outside when he does it so that you reinforce the importance of the bell. Eventually he will get bored of ringing it for fun and ring it when he needs it...
Also, you have to keep in mind that at his young age, 2.5 hours is a long time, especially if he has had a full bowl of water.