Jermain Defoe struck a hat-trick as Sunderland dragged 10-man Swansea closer to the bottom three in a game packed with refereeing controversy.
Defoe pounced on Lukasz Fabianski's mistake to score, but Swansea equalised with Gylfi Sigurdsson's penalty.
Kyle Naughton was controversially sent off for a foul on Yann M'Vila but Andre Ayew put the Swans ahead by half-time.
Patrick van Aanholt's deflected shot levelled and Defoe struck twice to secure a second successive league win.
Relive Sunderland's victory at the Liberty Stadium.
Sunderland have now leapfrogged arch rivals Newcastle into 18th in the Premier League table, just one point and one place below Swansea.
Despite Defoe's heroics, it was referee Graham Scott who found himself as the centre of attention, with doubts hanging over three of the six goals as well as the seemingly harsh dismissal of Naughton.
Joining the select group of Sir Alex Ferguson, Arsene Wenger, Harry Redknapp and David Moyes, Sunderland's Sam Allardyce became only the fifth manager to reach 450 Premier League games.
The former Bolton and Newcastle boss did not have to wait long to celebrate the landmark, as Defoe put Sunderland ahead after just three minutes.
Fabianski inexplicably hit his goal-kick straight to Adam Johnson and was then only able to parry Fabio Borini's shot, allowing Defoe to tap in from what appeared to be an offside position.
Allardyce's elation soon turned to anger, however, as Swansea equalised in similarly dubious fashion.
Referee Scott awarded the hosts a penalty for what seemed like a Wes Brown trip on Ayew, but replays appeared to show the Ghanaian forward had fallen over his own feet.
Sigurdsson confidently converted the spot-kick, much to Allardyce's visible fury on the touchline.
If Defoe's opener and Sigurdsson's equaliser were debatable, Naughton's dismissal was a controversial flashpoint which prompted a vitriolic backlash from the home crowd.
The Swansea right-back won the ball from M'Vila but, having done so with studs showing, Scott showed him a red card.
Swansea interim manager Alan Curtis - who waited to confront the official at the interval - claimed Scott got "all the major incidents wrong", adding Naughton "clearly won the ball".
Despite the setback, his side initially responded well to their numerical disadvantage as Ayew latched on to Fabianski's clearance and scored with a powerful drive.
The Swans were not ahead for long though, as four minutes after the restart Van Aanholt's 20-yard shot deflected off Federico Fernandez and flew into the top corner.
While Allardyce was presiding over his Premier League milestone, this was Curtis' first since being named Swansea's manager for the rest of the season.
Curtis' side defended raggedly throughout and there was a certain inevitability - and, once more, controversy - to Sunderland's third goal.
Defoe was offside as he collected Johnson's through ball but linesman Mark Perry did not raise his flag and the Sunderland striker finished calmly.
The England international striker was then perfectly placed to slide in from Van Aanholt's excellent cross to put the game beyond doubt with his fifth goal in two games.
Swansea, who are 17th in the Premier League table, remain just one point above Sunderland and Newcastle immediately below them.
Swansea manager Alan Curtis: "The first goal and third are clearly offside decisions. You can recover but when you play with 10 men for an hour, that's the one that killed us more than anything."
Sunderland manager Sam Allardyce: "We manipulated or played with the situation as it panned out. That's all we can do. We have taken the opportunity rightly or wrongly to win the game. For us it's an unbelievable win. Today it's an enormous, enormous, enormous three points to give us encouragement and hope going forward."
Sunderland will look to make it three Premier League wins from three when they travel to Tottenham on Saturday at lunchtime, while Swansea host Watford at the Liberty Stadium on Monday night.
Full Time Match ends, Swansea City 2, Sunderland 4.
90:00 +4:09 Full timeFull Time Second Half ends, Swansea City 2, Sunderland 4.
90:00 +3:25Offside, Swansea City. Lukasz Fabianski tries a through ball, but Bafétimbi Gomis is caught offside.
90:00 +2:54Attempt saved. Bafétimbi Gomis (Swansea City) right footed shot from outside the box is saved in the top centre of the goal. Assisted by Jack Cork.
90:00 +0:05 SubstitutionSubstitution Substitution, Swansea City. Jack Cork replaces André Ayew.
88:59Foul by Angel Rangel (Swansea City).
88:59Danny Graham (Sunderland) wins a free kick on the left wing.
85:55 SubstitutionSubstitution Substitution, Sunderland. Duncan Watmore replaces Jeremain Lens.
84:51 Goal scoredGoal! Goal! Swansea City 2, Sunderland 4. Jermain Defoe (Sunderland) right footed shot from very close range to the bottom right corner. Assisted by Patrick van Aanholt.
83:57Foul by Angel Rangel (Swansea City).
83:57Jermain Defoe (Sunderland) wins a free kick in the defensive half.
83:30Corner, Swansea City. Conceded by Patrick van Aanholt.
82:56 SubstitutionSubstitution Substitution, Sunderland. Danny Graham replaces Fabio Borini.
81:59Offside, Sunderland. Jeremain Lens tries a through ball, but Adam Johnson is caught offside.
80:22Corner, Swansea City. Conceded by Patrick van Aanholt.
78:31 BookingBooking Patrick van Aanholt (Sunderland) is shown the yellow card for a bad foul.
78:22Modou Barrow (Swansea City) wins a free kick on the right wing.
78:22Foul by Patrick van Aanholt (Sunderland).
76:11 SubstitutionSubstitution Substitution, Swansea City. Bafétimbi Gomis replaces Wayne Routledge.
75:38Federico Fernández (Swansea City) wins a free kick in the defensive half.
Foul by Jeremain Lens (Sunderland).
73:59Corner, Sunderland. Conceded by Angel Rangel.
72:49Attempt missed. Neil Taylor (Swansea City) left footed shot from the left side of the box misses to the right. Assisted by Gylfi Sigurdsson.
72:19 SubstitutionSubstitution Substitution, Sunderland. Jack Rodwell replaces Lee Cattermole.
71:20Ki Sung-yueng (Swansea City) wins a free kick in the defensive half.
71:20Foul by Lee Cattermole (Sunderland).
70:00Corner, Swansea City. Conceded by Adam Johnson.
69:11Offside, Sunderland. Fabio Borini tries a through ball, but Jermain Defoe is caught offside.
68:11Foul by Ashley Williams (Swansea City).
68:11Jeremain Lens (Sunderland) wins a free kick on the right wing.
66:50 BookingBooking Vito Mannone (Sunderland) is shown the yellow card.
65:36Modou Barrow (Swansea City) wins a free kick on the right wing.
65:36Foul by Patrick van Aanholt (Sunderland).
64:11Neil Taylor (Swansea City) wins a free kick in the defensive half.
64:11Foul by Billy Jones (Sunderland).
63:26Offside, Swansea City. Gylfi Sigurdsson tries a through ball, but Angel Rangel is caught offside.
63:24Attempt saved. Gylfi Sigurdsson (Swansea City) left footed shot from outside the box is saved in the top centre of the goal. Assisted by Angel Rangel.
60:18 Goal scoredGoal! Goal! Swansea City 2, Sunderland 3. Jermain Defoe (Sunderland) right footed shot from the right side of the box to the bottom left corner. Assisted by Adam Johnson with a through ball.
59:34Corner, Sunderland. Conceded by Modou Barrow.
58:58Corner, Sunderland. Conceded by Angel Rangel.
58:27Foul by André Ayew (Swansea City).
58:27Wes Brown (Sunderland) wins a free kick in the defensive half.
57:49Jeremain Lens (Sunderland) hits the right post with a right footed shot from the right side of the six yard box. Assisted by Fabio Borini with a through ball.
54:42Attempt blocked. Gylfi Sigurdsson (Swansea City) right footed shot from outside the box is blocked. Assisted by Ashley Williams.
54:21André Ayew (Swansea City) wins a free kick on the right wing.
54:21Foul by Wes Brown (Sunderland).
49:07Foul by Federico Fernández (Swansea City).
49:07Billy Jones (Sunderland) wins a free kick on the right wing.
48:08 Goal scoredGoal! Goal! Swansea City 2, Sunderland 2. Patrick van Aanholt (Sunderland) right footed shot from the left side of the box to the top right corner. Assisted by Adam Johnson.
45:00Second Half begins Swansea City 2, Sunderland 1.
45:00 +4:11 Half timeHalf Time First Half ends, Swansea City 2, Sunderland 1.
45:00 +3:03Neil Taylor (Swansea City) wins a free kick in the defensive half.
45:00 +3:03Foul by Jermain Defoe (Sunderland).
45:00 +2:14Corner, Sunderland. Conceded by Federico Fernández.
45:00 +0:20Delay over. They are ready to continue.
44:02Delay in match Wayne Routledge (Swansea City) because of an injury.
44:02Delay in match Billy Jones (Sunderland) because of an injury.
43:36Foul by Wayne Routledge (Swansea City).
43:36Billy Jones (Sunderland) wins a free kick in the defensive half.
41:48 SubstitutionSubstitution Substitution, Swansea City. Angel Rangel replaces Leon Britton.
41:07Corner, Sunderland. Conceded by Ki Sung-yueng.
39:04 Goal scoredGoal! Goal! Swansea City 2, Sunderland 1. André Ayew (Swansea City) left footed shot from the left side of the box to the bottom right corner. Assisted by Lukasz Fabianski following a fast break.
38:41Delay over. They are ready to continue.
37:55Delay in match Yann M'Vila (Sunderland) because of an injury.
36:39 DismissalDismissal Kyle Naughton (Swansea City) is shown the red card.
36:34Foul by Kyle Naughton (Swansea City).
36:34Yann M'Vila (Sunderland) wins a free kick on the left wing.
35:25Foul by Kyle Naughton (Swansea City).
35:25Fabio Borini (Sunderland) wins a free kick in the defensive half.
34:53Federico Fernández (Swansea City) wins a free kick in the defensive half.
34:53Foul by Jermain Defoe (Sunderland).
32:44Neil Taylor (Swansea City) wins a free kick in the defensive half.
32:44Foul by Adam Johnson (Sunderland).
31:26Attempt saved. Modou Barrow (Swansea City) left footed shot from outside the box is saved in the top centre of the goal. Assisted by Ki Sung-yueng.
29:37Corner, Swansea City. Conceded by Patrick van Aanholt.
22:01Corner, Swansea City. Conceded by Wes Brown.
20:39 Goal scoredGoal! Goal! Swansea City 1, Sunderland 1. Gylfi Sigurdsson (Swansea City) converts the penalty with a right footed shot to the bottom left corner.
19:39Penalty Swansea City. André Ayew draws a foul in the penalty area.
19:39Penalty conceded by Wes Brown (Sunderland) after a foul in the penalty area.
18:03André Ayew (Swansea City) wins a free kick on the left wing.
18:03Foul by Jeremain Lens (Sunderland).
17:12Attempt missed. André Ayew (Swansea City) header from the centre of the box is close, but misses to the left. Assisted by Gylfi Sigurdsson with a cross following a corner.
16:46Corner, Swansea City. Conceded by Billy Jones.
14:39Corner, Sunderland. Conceded by Federico Fernández.
12:29Corner, Swansea City. Conceded by Patrick van Aanholt.
7:46Corner, Swansea City. Conceded by John O'Shea.
5:26Attempt missed. Adam Johnson (Sunderland) right footed shot from the centre of the box misses to the left. Assisted by Patrick van Aanholt.
4:43Foul by André Ayew (Swansea City).
4:43John O'Shea (Sunderland) wins a free kick in the defensive half.
4:00Attempt missed. André Ayew (Swansea City) left footed shot from the centre of the box is high and wide to the left. Assisted by Wayne Routledge.
2:54 Goal scoredGoal! Goal! Swansea City 0, Sunderland 1. Jermain Defoe (Sunderland) right footed shot from very close range to the bottom right corner.
2:51Attempt saved. Fabio Borini (Sunderland) left footed shot from the left side of the box is saved in the bottom right corner. Assisted by Adam Johnson.
2:10Attempt blocked. Ki Sung-yueng (Swansea City) right footed shot from outside the box is blocked. Assisted by Modou Barrow.
1:36Ashley Williams (Swansea City) wins a free kick in the defensive half.
1:36Foul by Jeremain Lens (Sunderland).
0:00First Half begins.
0:00Lineups are announced and players are warming up.
Live data and text provided by our data suppliers