Portsmouth 1-2 Charlton
Charlton recovered from a goal down to record their second Premiership victory in a row after Shaun Bartlett's last-minute goal saw off Portsmouth at Fratton Park.
Teddy Sheringham put Pompey into a well-deserved lead on 34 minutes when he nodded home Tim Sherwood's corner for his sixth goal of the season.
But second-half substitute Fortune scrambled home for Charlton after 77 minutes following Portsmouth's failure to deal with a long throw-in.
And Bartlett headed home unchallenged from Paolo di Canio's corner in the 90th minute to secure a scarcely-deserved three points for Alan Curbishley's side and condemn Portsmouth to a third straight Premiership defeat.
Portsmouth totally dominated the first half as a lethargic Charlton midfield allowed the Portsmouth pair of Alexei Smertin and Steve Stone to set the tempo.
The duo combined to set up the first real chance of the match on 10 minutes when Stone collected Smertin's pass before swinging in a cross that Sheringham sent just wide.
Two minutes later, Charlton goalkeeper Dean Kiely had be alert as he sprinted off his line to halt Yakubu Ayegbini's pursuit of Stone's through ball.
And the Addicks had Kiely to thank again on 15 minutes when he tipped Sheringham's sweetly-struck drive over after Berger laid off Stone's cross into his path.
34 mins: Sheringham puts Portsmouth ahead
77 mins: Fortune puts Charlton level
89 mins: Bartlett grabs a late winner for Charlton
Charlton were outplayed in midfield, forcing Curbishley into an early tactical switch with Claus Jensen and Graham Stuart swapping roles to try to clamp down on the rampant Stone.
Chris Perry, playing in the last game of his one-month loan from Spurs, was fortunate to escape with a yellow card after pulling Yakubu down on the edge of the area.
But Charlton's luck did not hold for much longer with Sheringham giving his side a deserved lead on 34 minutes with his glancing near-post header from Sherwood's corner eluding Scott Parker's attempted goal-line clearance.
It took until the 45th minute for Charlton to land their first shot on target with Jensen's free-kick testing Shaka Hislop after Arjan de Zeeuw fouled Kevin Lisbie.
After the break, Charlton came out with a more aggressive attitude, but the best early chances still fell to the home side with Yakubu going close and Berger's instinctive header dropping just over the bar.
On 65 minutes Charlton sent on Paolo di Canio in place of Jensen in search of inspiration up front, while Fortune replaced Mark Fish at the back.
And the substitutions paid dividends with Di Canio providing most of the spark for Charlton's much-improved second-half display.
Fortune stabbed home from six yards on 77 minutes after Stuart's long throw-in caused panic in the Portsmouth defence.
The central defender almost grabbed a second three minutes later when Portsmouth's offside trap failed to prevent Parker sneaking in a header that drifted just wide.
And with seconds left, Charlton grabbed an unlikely win as Bartlett leapt highest to divert Di Canio's corner past Hislop.
Portsmouth: Hislop, Schemmel, De Zeeuw, Stefanovic, Zivkovic,
Stone, Faye, Smertin (Sherwood 26), Berger (Taylor 85),
Ayegbini (Roberts 76), Sheringham.
Subs Not Used: Wapenaar, Foxe.
Booked: De Zeeuw, Sheringham, Sherwood.
Charlton: Kiely, Powell, Fish (Fortune 64), Perry, Young,
Stuart, Parker, Holland, Jensen (Di Canio 64), Lisbie, Bartlett.
Subs Not Used: Royce, Kishishev, Johansson.
Booked: Perry, Bartlett.
Referee: G Poll (Hertfordshire).