Marcelo Bielsa’s side took the lead when Stuart Dallas lashed in a rebound following a dangerous Jack Harrison cross, but Son Hueng-min equalised with a composed finish.
Spurs were unlucky not to take the lead when VAR ruled out a cheeky Harry Kane strike before Leeds regained the lead when Patrick Bamford tapped in from close range and substitute Rodrigo sealed the win.
Kane scored another goal ruled out for offside and the Spurs captain hit the crossbar as the visitors tried in vain to rescue a point.
The result moves Leeds into the top half of the table ahead of Arsenal and Aston Villa, while Tottenham remain fifth after dropping points in the race for European qualification.
Illan Meslier – 8. Meslier could do little about the Son goal, but made two terrific stops to deny a deflected Aurier effort and Erik Lamela’s strike.
Luke Ayling – 7. Struggled to contain Son early in the game, but was much more solid and resolute as the match played out.
Diego Llorente – 7. Defended well and dealt with Kane as best he could.
Pascal Struijk – 8. The central defender had a chance when he volleyed a flicked ball over the crossbar. He defended well throughout.
Ezgjan Alioski – 7. His overlapping runs were causing Spurs all kinds of problems, but his own defending left much to be desired. Never stopped running, though.
Jack Harrison – 8. The Manchester City loanee was excellent, and his cross that led to the Dallas opening goal was a thing of beauty. He was brilliantly denied by Lloris after cutting inside.
Robin Koch – 7. Never stopped running in midfield, and made a number of key passes and tackles.
Mateusz Klich – 8. A terrific performance from the Pole, who was unlucky to not find the net when denied by a spectacular Lloris save.
Tyler Roberts – 6. He made a number of clever runs forward, but struggled in possession when in the final third. Withdrawn for Raphinha.
Stuart Dallas – 7. Dallas continued his run into the box to take advantage of Reguilon’s error and give Leeds the lead.
Patrick Bamford – 7. Tested Lloris early, and took his chance before half time when he ran towards the near post and tapped in.
Raphinha – 7. Brilliantly assisted the third goal, picking out Rodrigo.
Rodrigo – 7. The Spaniard came off the bench and immediately made an impact to score after great work from Raphinha.
Hugo Lloris – 9. Did well to deny Bamford and Harrison either side of expertly stopping a potential Reguilon own goal, although Dallas smashed in the rebound. The Frenchman could do nothing about the second either, but he brilliantly denied Klich in the second half.
Serge Aurier – 5. Struggled to deal with Harrison and Alioski throughout. Almost scored a special equaliser, although it deflected off Alioski.
Toby Alderwiereld – 6. While the Belgian was certainly not the weak link in a poor Spurs defence, he perhaps could have kept a closer eye on Bamford for the second goal.
Eric Dier – 5. The England international was rooted to the spot as Bamford strolled past him to tap in Leeds’ second.
Sergio Reguilon – 4. The Spaniard has been out of form for a while now, and it was horrible defending from Reguilon that led to the Dallas goal.
Pierre-Emile Hojbjerg – 6. The holding midfielder genuinely looks out of his depth at Spurs, and never seems to be comfortable.
Giovani Lo Celso – 5. Completely anonymous as he was dominated by Klich.
Gareth Bale – 5. A quiet display from the Welshman, who appeared to be in better form recently.
Dele Alli – 7. An excellent pass from Alli played in Son for the goal, splitting the Leeds defence. He excellently teed up Kane for his narrowly offside finish too, but struggled in the second half.
Son Heung-Min – 7. Took his chance brilliantly to score his 22nd goal of the season. Perhaps should have done better with an opportunity 10 minutes into the second half.
Harry Kane – 6. The England captain scored two offside goals – the first of which was remarkably tight – but otherwise struggled to influence the game. Hit the crossbar with a free kick in the second half.
Erik Lamela – 6.
Lucas Moura – 6.
Tanguy Ndombele – 6.