Britt Assombalonga needed only four minutes to set the League One high-flyers on their way when firing past Adam Federici at his near post.
Tomlin doubled their advantage with a stunning 25-yard strike in the 19th minute before Danny Swanson got in on the act with another glorious individual goal, racing 70 yards before curling a sublime finish past Federici.
Bobby Olejnik produced a brilliant save to keep out a header from Hal Robson-Kanu - one of just two Reading men to retain his place in the starting line-up as boss Nigel Adkins rang the changes.
And Peterborough pressed on in the second period as Tomlin converted two penalties to complete his treble.
The first arrived in the 54th minute after Kaspars Gorkss had brought down Assombalonga, and referee Keith Hill pointed to the spot again with eight minutes remaining after Tyrone Barnett had been dragged to the deck by Shaun Cummings.
Jack Payne struck the final blow in stoppage time when beating Federici with a low 25-yard drive to grab his first goal in Peterborough colours.