Substitute Jason Puncheon cancelled out Phil Bardsley's opener to all but preserve Southampton's Premier League status and leave Sunderland in trouble.
Sunderland took the lead after half-time through a fierce deflected drive from Bardsley.
Saints hit back when Puncheon fired home at the second attempt.
They only need to avoid an improbable margin of defeat next week to stay up, while both clubs will be safe if Wigan lose to Arsenal on Tuesday.
Wigan have two games left - the other being at home to relegation rivals Aston Villa - and must win them both to avoid finishing in the bottom three.
If they do take maximum points, Sunderland would need a draw to be sure of staying up, with Aston Villa then filling the final relegation slot.
Southampton must only avoid a record defeat at home to Stoke to guarantee their Premier League status.
Dependent on defenders
Each of Sunderland's last three goals have come from defenders
Neither team arrived in a particularly rich vein of form and that seemed to result in a cagey opening half that featured few clear openings.
Southampton looked the more assured in possession - a mark of Mauricio Pochettino's impact as manager - but they lacked a cutting edge that may explain a return of just one goal in their previous four games.
Among Sunderland's problems this season has been an inability to hold on to the ball and build sustained pressure, which again proved the case as any threat they posed came almost entirely on the counter-attack.
It took 27 minutes for a attempt on goal, Alfred N'Diaye driving through midfield before a harmless shot from distance was blocked.
At the other end, Simon Mignolet gathered comfortably from Rickie Lambert and then reacted well to deny Jay Rodriguez.
Finally some life had been injected into a fairly dour encounter, but Sunderland's Adam Johnson summed up his campaign with a tame effort from close range, and Mignolet thwarted Lambert once more.
Di Canio responded by replacing James McClean with Connor Wickham at half-time, and his side certainly carried greater urgency after the interval.
Mignolet was alert to save two Rodriguez headers from Steven Davis corners, but Sunderland were otherwise on the front foot and their improvement was rewarded when Bardsley opened the scoring.
Johnson squeezed a pass to the right-hand side of the box, where Bardsley unleashed a fierce strike that flew in off Jos Hooiveld.
The Stadium of Light was now a cauldron of noise, but Pochettino responded by introducing Puncheon and James Ward-Prowse - and their impact was immediate.
Rodriguez and Lambert combined to free Ward-Prowse on the left and, although Puncheon's header from his cross was repelled by Mignolet, Puncheon managed to hook the rebound home while on the floor.
Lambert had a chance to snatch victory for the visitors, but his low drive was kept out by the brilliant Mignolet.
Sunderland manager Paolo Di Canio:
"Let me be sure that we are going to keep the club up, and then I am going to change everything. I am going to change everything.
"I'm not going to push all the players out, but I am going to keep the right players and bring in the right players if it is possible."
Southampton manager Mauricio Pochettino:
"When you make substitutions, you always want them to have an impact and today the two substitutions I made had an immediate impact.
"It was a centre from Ward-Prowse and Puncheon got the goal, so it was immediate.
"Yes, we are happy.
"The players have put in an amazing performance in the four months that I have been here."
- 22 Mignolet
- 02 Bardsley
- 16 O'Shea
- 24 Cuellar
- 03 Rose
- 04 N'Diaye
- 07 Larsson (Vaughan - 74' )
- 14 Colback
- 21 Johnson
- 23 McClean (Wickham - 46' )
- 09 Graham
- 20 Westwood
- 12 Kilgallon
- 29 Marrs
- 15 Vaughan
- 18 Mangane
- 10 Wickham
- 30 Mandron
- 31 Boruc
- 02 Clyne
- 05 Hooiveld
- 06 Fonte
- 23 Shaw Booked
- 04 Schneiderlin
- 08 S Davis
- 18 Cork (Ward-Prowse - 73' )
- 20 Lallana (Puncheon - 72' )
- 07 Lambert
- 09 Rodriguez Booked
- 01 K Davis
- 03 Yoshida
- 15 Forren
- 16 Ward-Prowse
- 33 De Ridder
- 42 Puncheon
- 24 Mayuka