With just one match to go in the Premiership, Sunderland remain in danger as Portsmouth were the better side in Monday's only league match.
Sunderland did take the lead after almost an hour of play as Kenwyne Jones converted a Calum Davenport cross.
But John Utaka equalised almost immediately, and it was a deserved goal as Portsmouth had been the better side throughout most of the match. An own goal from Phil Bardsley even made it 2-1 eight minutes later.
The third and last home goal came with two minutes to go as Armand Traore fired past keeper Fulop for 3-1.