Peter Crouch netted for the third game in succession with a sublime overhead kick before partner in crime Jermain Defoe won the match with his sixth goal of the season.
Crouch was Portsmouth's two-goal extra time hero against Vitoria Gumaraes in the UEFA Cup on Thursday.
The former Liverpool striker continued where he left on in Portugal with a sublime overhead kick in the 25th minute.
Defoe whipped in a cross from the right which fell slightly behind Crouch, who adjusted his six foot seven inch frame to volley superbly past Stoke goalkeeper Steve Simonsen from 12 yards.
The goal was a replica of Crouch's famous Champions League strike for Liverpool against Galatasaray.
Rory Delap was a permanent menace to the Portsmouth defence to his long throws and the Irishman almost embarrassed David James by launching a missile from the left which trickled agonisingly across the Portsmouth goal-line.
Delap went one better three minutes into the second half when his lob from the right caught out the whole Portsmouth defence for Ricardo Fuller to bundle home at the back post against his old club.
Stoke's hopes of snatching a rare away point were dashed when Defoe put Portsmouth back in front three minutes later.
Defoe had already rattled against Simonsen's left post when he collected the ball on the edge of the 18-yard box and fired expertly past the Stoke keeper at his near left post from 18 yards.
Crouch would have had his second of the afternoon but for a brilliant reaction save from Simonsen in the 57th minute after a marauding run from Armand Traore.
Simonsen also denied Traore his first Portsmouth goal five minutes later with another good stop to keep out the Arsenal loanee's near-post rocket shot.