Pompey threw away two points at Fratton Park after nine-man Coventry staged an incredible fightback.
They looked to be cruising to victory, having recovered from the setback of falling behind to Jordy Hiwula’s early strike.
Ronan Curtis headed the hosts back on level terms and John Marquis turned the game on its head just before the break.
The win appeared to be wrapped up when Gareth Evans raced through to score and their opponents saw Fankaty Dabo dismissed.
Matt Godden then netted a penalty as the drama continued, only for Gervane Kastaneer to also be sent off.
Despite their numerical disadvantage, Michael Rose grabbed a late equaliser for the Sky Blues to leave the Fratton faithful stunned.
Kenny Jackett made three changes from the side that were narrowly beaten at Sunderland on Saturday.
Evans returned to skipper the side, with Ross McCrorie starting at right-back, having impressed from the bench on Wearside.
Sean Raggett also came in for his full Pompey debut, as Andy Cannon, Christian Burgess and Anton Walkes made way.
The first half was played at breakneck speed and Coventry keeper Marko Marosi was forced to parry clear Marcus Harness’ delivery, with Liam Kelly on hand to clear the loose ball.
But it was the visitors who broke the deadlock in just the third minute after breaking quickly from a Blues corner.
Godden was sent clear down the left and he slipped a pass across for the unmarked Hiwula to lash a shot into the roof of the net.
The hosts were not behind for long, however, and when the impressive Harness intercepted a clearance, it led to the equaliser.
He received the ball back and whipped in a superb cross towards the back post, where CURTIS arrived to powerfully head home.
And Pompey felt they should have had the chance to go ahead just moments later when Marquis went down in the box.
It appeared as though he had been tripped by Rose and the striker was furious when referee Kevin Johnson awarded a corner.
McCrorie then went close with a swerving strike from the edge of the box that a diving Marosi did well to push clear.
Coventry were looking dangerous themselves, though, and Hiwula fired into the side netting after collecting Brandon Mason’s threaded pass.
The hosts were forced to make a change on 31 minutes when Lee Brown went down injured and had to be replaced by Brandon Haunstrup.
And their opponents soon had a couple of players booked, with Dabo and Kyle McFadzean having their names taken for fouls on Harness and Marquis respectively.
It seemed as though the players would be heading in all square for the interval, but a fine move ensured Pompey would be ahead.
Tom Naylor played a superb long pass up the pitch for Curtis, whose backheel was collected by the overlapping Haunstrup.
He fired in a low cross and a stretching MARQUIS was able to poke the ball into the net for his first goal since his Fratton return.
Half Time: Pompey 2 Coventry 1
Paul Downing somehow managed to head wide an Evans free-kick once the action restarted, although his blushes were spared by the linesman’s flag.
His centre-back partner did nor fare much better when Evans cut a corner back for him, with Raggett ballooning a shot over the bar.
Coventry certainly looked capable of scoring themselves and it took a fine save by Craig MacGillivray to deny Godden when Downing’s clearance ricocheted into his path.
McCrorie then made a perfectly-timed challenge inside the box to halt the progress of the marauding Hiwula.
Both defences were looking susceptible to conceding more goals and it was a mistake from the hosts that led to Pompey’s third goal.
McFadzean was caught dithering on the ball by EVANS, who burst clear and calmly slotted into the net.
The hosts were then furious when play was stopped for Dabo’s handball, despite Curtis racing clear and finding the net.
But the Coventry right-back had already been booked and received his marching orders from Johnson.
Marosi then came close to gifting Harness a goal, fumbling his fierce shot and quickly recovering to prevent the ball from spinning over the line.
MacGillivray looked more assured at the other end, adjusting his position to push over a swerving Liam Kelly strike.
But the Sky Blues did have a lifeline on 75 minutes, as Godden stroked home from the spot after Ben Close had been penalised for upending Kelly.
Their hopes of a comeback almost immediately received a setback, however, when Kastaneer – who had only been on the pitch for 11 minutes – was dismissed.
He lunged in on Downing having already received a yellow card and despite his pleading, was shown a red card by Johnson.
But it looked as though they had equalised on 82 minutes when Rose turned the ball home at the back post, only to have his celebrations cut short by an offside flag.
Burgess replaced Evans, as Pompey tried to shore up their backline for the closing stages of the contest.
Coventry had other ideas, though, and the nine men remarkably levelled when Rose poked home from a long throw.
Brett Pitman was thrown on for the closing stages, although it was Close and Curtis who had half-chances to rescue the victory.
Pompey (4-2-3-1): MacGillivray; McCrorie, Raggett (Pitman 90), Downing, Brown (Haunstrup 32); Naylor, Close; Harness, Evans (c) (Burgess 85), Curtis; Marquis
Goals: Curtis 10, Marquis 43, Evans 56
Booked: Naylor, Marquis
Subs not used: Bass, Bolton, Cannon, Harrison
Coventry (4-3-3): Marosi; Dabo, McFadzean, Rose, Mason; Shipley, Kelly (c), Westbrooke (McCallum 64); Jobello (Kastaneer 67), Godden, Hiwula (Bakayoko 80)
Goals: Hiwula 3, Godden 75 (pen), Rose 86
Sent off: Dabo (two yellow cards), Kastaneer (two yellow cards)
Subs not used: Wilson, Hyam, Eccles, Bapaga
Referee: Kevin Johnson
Attendance: 18,748 (950 away fans)