Chelsea were bidding to take over from Liverpool at the summit, but their loss to the league's bottom club means that Brendan Rodgers's side can now open up a five-point lead if they win at Norwich City on Sunday.
Samuel Eto'o put Chelsea ahead after only 12 minutes, but Sunderland equalised quickly through Connor Wickham and claimed victory thanks to an 82nd-minute penalty from on-loan Liverpool striker Fabio Borini.
Having held third-placed Manchester City to a 2-2 draw in midweek, Sunderland have emerged as this season's kingmakers, and victory at Stamford Bridge gave their chances of avoiding relegation a sizeable boost. Gus Poyet's side, who had previously gone nine games without a win, finished the day three points from safety and also have a game in hand to play.
Chelsea took the lead in the 12th minute, Eto'o volleying in from Willian's left-wing corner, but it took Sunderland only six minutes to draw level. Mark Schwarzer, deputising in goal for the unwell Petr Cech, spilled a long-range shot from Marcos Alonso and Wickham pounced to clip home the rebound.
Chelsea's response was not slow in coming and visiting goalkeeper Vito Mannone had to produce smart saves to thwart Branislav Ivanovic, Nemanja Matic, Mohamed Salah and Willian before half-time.
The Chelsea onslaught continued in the second half, with Eto'o curling just wide and substitute Demba Ba miscuing from Willian's cut-back. In the 81st minute, Cesar Azpilicueta was penalised for sliding in on Jozy Altidore and Borini, a former Chelsea striker, calmly beat Schwarzer from the spot.
Felix Magath's improving side had won their two previous games and they reacted impressively after falling behind to a close-range Paulinho strike in the 35th minute, with Steve Sidwell equalising almost immediately. However, second-half goals from Harry Kane and Younes Kaboul secured victory for Tim Sherwood's Spurs, with Sidwell seeing a late penalty saved by Spurs goalkeeper Hugo Lloris.
"If we had got any points here, it would have been an extra point for us," Fulham manager Magath said, whose side ended the day two points from safety. "We have to win our home games and I think we can manage it."
Fulham slipped one place to 19th after Cardiff City moved above them on goal difference by drawing 1-1 at home to Stoke City. Marko Arnautovic gave Stoke the lead from the penalty spot in first-half injury time, but Peter Whittingham earned Cardiff a draw with a penalty of his own after Steven Nzonzi tripped Fraizer Campbell.
Cardiff manager Ole Gunnar Solskjaer was unhappy about Stoke's penalty, which was awarded for a foul on Peter Odemwingie by Kim Bo-Kyung.
"Stoke's was not a penalty," the Norwegian said. "All the players were incensed, but it was important we kept cool and tried to do the right things."
Aston Villa spurned a chance to put clear daylight between themselves and the bottom three in a 0-0 draw at home to Southampton, while a 59th-minute Mile Jedinak penalty saw Crystal Palace win 1-0 at West Ham United.