A first-half double from Ryan Williams ensured the Blues deservedly ran out 2-0 winners and moved up to third in the League One table.
Kenny Jackett’s side’s victory could have been even greater, with John Marquis and Ronan Curtis both hitting the woodwork after the break.
Marquis had the first chance of the game on nine minutes when his curling shot was well saved by home keeper David Cornell.
Pompey stopper Craig MacGillivray was forced into a smart save of his own in the 24th minute when he got down to thwart Andre Dozzell’s effort.
The breakthrough would arrive five minutes later – and it went the visitors’ way.
Marcus Harness drilled in a low cross and Marquis superbly teed-up Williams, who crashed home a left-foot shot for his first goal of the season.
Pompey almost had a second in the 36th minute when Lee Brown cut a ball back for Tom Naylor, but his effort went narrowly wide.
But Jackett’s men would double their advantage before the break – with Williams again on the scoresheet.
Ronan Curtis headed down a long ball for the Aussie and he swept home in style.
Pompey should have had the game done and dusted just three minutes into the second half. Williams’ cross put it on a plate for Marquis but he headed wide with the goal at his mercy.
Then the former Doncaster man struck the bar when he bravely beat Cornell to the ball from a free-kick.
The Blues continued to dominate and refused to down tools. But they’d be repelled by the woodwork once again in the 63rd minute when Curtis’ 25-yard effort had the keeper beaten.
And Pompey again somehow were denied increasing their lead on 66 minutes when Sean Raggett’s header was well saved by Cornell.
In truth, Ipswich hardly looked like finding their way back into the game. Mark McGuinness headed over in the closing stages, but that was about as good as it got as Pompey stayed resolute.
The win saw the Blues leadfrog Ipswich in the table to third and now they sit just a point outside the automatic promotion places.