Pompey’s stay at the League Two summit was short-lived as they lost 2-1 at home to Exeter.
There was plenty of energy from a Blues side who dominated possession and created a host of chances.
But the Grecians left them stunned with a sucker-punch in each half, with first David Wheeler and then Arron Davies getting the goals.
And the visitors made sure they ended Pompey’s unbeaten run with some stoic defending to repel the attacking charge.
The only bright point for the hosts was a stoppage-time consolation for substitute Gary Roberts.
Paul Cook stuck with the same side that went top of the table by beating Bristol Rovers at the weekend.
Pompey came roaring out of the blocks and Exeter struggled to deal with their quick counter-attacks in the early stages.
The hosts had three good chances to open the scoring in the space of a few seconds in the third minute.
Two of them fell to Gareth Evans, with the winger denied first by a Bobby Olejnik save and then a brave Jordan Moore-Taylor block.
Skipper Ben Davies sent the ball back into the box, where Jayden Stockley was waiting to head wide of the post.
Kyle Bennett was next to go close with a cleanly-struck free-kick from 25 yards that he bent narrowly off target.
The Grecians were finding it tough to stifle Pompey’s attacking verve, although their defenders well doing well to fling themselves in front of any balls into the box.
That happened on 18 minutes when Bennett broke brilliantly up the pitch and fed Stockley. His low cross was met by Chaplin, but again there was a red-and-white-shirted man to get in the way.
Then, from nowhere, the Blues suddenly found themselves behind, as Danny Hollands was caught in possession and Wheeler drove an accurate drive into the bottom corner.
The goal seemed to puncture Pompey’s spirit, although the lively Bennett was still tormenting the visitors with his trickery out wide.
And he had a shot saved by Olejnik just before the break after Hollands and Conor Chaplin had combined well to tee him up.
Exeter City 1
Pompey were soon on the attack once the second half got underway and Bennett tested Olejnik’s handling with a long-range effort.
A stretching Evans was then millimetres from making a connection after Enda Stevens’ cross had been touched on by Stockley.
Cook decided to make his first switch on 55 minutes, with Chaplin making way for Matt Tubbs.
But it was Exeter who were next to threaten, with Stockley forced to hack clear after Aaron McCarey had kept out Christian Ribeiro’s close-range shot.
It was only a brief reprieve for the Blues, however, as despite offside appeals, Holmes delivered a dangerous ball into the box.
McCarey got a hand to it, but the ball sat up kindly for Davies to head past the Blues bodies stationed on the line.
Pompey now faced an uphill challenge, although they almost reduced the deficit on 65 minutes.
Stockley met a precision corner from Bennett, but Danny Butterfield was well-placed on the line to clear the danger.
Cook responded with his second switch, as Roberts replaced Evans to try to add a spark to the Blues’ attack.
And the Blues continued to apply plenty of pressure, only to see every foray forward or ball into the box repelled by a resolute Grecians back-line.
Stevens sent the ball across the face of goal on 85 minutes, but none of his team-mates were able to force it home.
Pompey certainly were not prepared to throw in the towel as they kept pumping the ball forward in the closing stages.
And a long-range effort from ROBERTS was deflected past Olejnik in stoppage-time to at least give the home support something to cheer.
Pompey (4-2-3-1): McCarey; Davies (c), Burgess, Clarke, Stevens; Barton, Hollands (Doyle 81); Evans (Roberts 66), Chaplin (Tubbs 55), Bennett; Stockley
Goals: Roberts 90+3
Booked: Burgess, Bennett
Subs not used: Bass, Webster, Atangana, Naismith
Exeter (4-3-3): Olejnik; Ribeiro, Brown, Tillson, Moore-Taylor; Oyeleke (Hoskins 79), Noble (c) (Butterfield 46), Davies; Grant (McCready 72), Wheeler, Holmes
Goals: Wheeler 20, Davies 56
Subs not used: Pym, Nicholls, Nichols, Morrison
Referee: Nicholas Kinseley
Attendance: 15,822 (313 away fans)