Emmanuel Adebayor was wrongly denied an equaliser as Stoke brought 10-man Tottenham’s six-game winning run in the Premier League to an end.
The Spurs striker replied to Matthew Etherington’s first-half double with a penalty at the Britannia Stadium but had a second goal ruled out by an offside flag despite replays showing the Togo striker was well onside.
Spurs could also have had another spot-kick when Ryan Shawcross cleared off the line with his arm in a frantic second half.
Adebayor shot narrowly wide and Thomas Sorensen brilliantly saved from Scott Parker amid the late drama but Stoke held on after the dismissal of Younes Kaboul.
It was the Potters’ third successive victory and brought Spurs’ first defeat in 12 games.
Tony Pulis’ men took charge early on as they flew out of the blocks, going close in the first minute.
The first of many dangerous Ryan Shotton throws was only partially cleared by Benoit Assou-Ekotto and former Spurs midfielder Etherington forced a brilliant save from Brad Friedel from the edge of the box.
Shotton then burst into the area himself only to drag a shot across goal and Etherington fired another effort straight at Friedel.
The visitors made their first break as Gareth Bale found space on the left but Robert Huth cleared and Stoke responded to claim a deserved 13th-minute lead.
Again a Shotton throw was not dealt with by the Spurs defence and Shawcross failed to connect when well placed at the back post.
The ball was worked back to Shotton and his deflected cross was flicked into Peter Crouch’s path by Jon Walters.
Crouch’s arm may have been involved as he chested down but he turned and fired against the near post before Etherington followed up to turn in.
Luka Modric went close as Spurs upped the tempo after Jonathan Woodgate was booked for hacking down Aaron Lennon but Sorensen tipped his effort around the post.
Stoke seemed determined not to give Parker much space and the England midfielder, caught by Crouch moments earlier, went down under a Woodgate challenge on the edge of the area.
Lennon played on, however, and his shot took a deflection before bobbling kindly towards Sorensen.
Adebayor turned to create an opportunity for himself 30 yards but failed to make firm contact and Sorensen saved.
After surviving that spell of pressure, Stoke grabbed a second in typical fashion just before the break.
Walters again flicked on another long throw from Shotton and Etherington arrived unmarked to score despite not hitting the cleanest of strikes.
Tottenham sent on Sebastien Bassong and Jermain Defoe for Assou-Ekotto and Lennon at the start of the second half and appeared to switch from a back four to a three-man defensive line with wing-backs.
Yet it was Stoke who started the half the better with Shotton’s throws continuing to cause problems in the visitors’ box.
Spurs did settle and began to assert themselves with Bale in particularly rampaging mood down the left.
Kyle Walker also threatened on the right and one dangerous cross just evaded the heads of two Spurs players before almost being turned into his own goal by Woodgate.
Spurs continued to press and referee Chris Foy pointed to the penalty spot adjudging Glenn Whelan to have caught Modric after 62 minutes.
Adebayor made no mistake as he clinically dispatched his spot-kick and the on-loan Manchester City forward almost hit an equaliser moments later with a shot that curled wide.
Sorensen brilliantly saved a shot from Parker as Spurs threw everything into attack and the goalkeeper also claimed an audacious, but harmless, chip from Rafael van der Vaart.
Kaboul wanted another penalty after going down under a Shawcross challenge but was given nothing and Sorensen saved a deflected Modric shot.
There was further drama in the Stoke box when, after Defoe went down appealing for a penalty, a Kaboul shot was cleared off the line by the arm of Shawcross.
Again Foy saw nothing untoward and then blew for offside as Adebayor tucked the ball back in into goal, when replays indicated he may have been onside.
Stoke were clearly hanging on as Defoe had another shot blocked but they may have breathed a sigh of relief as Kaboul received a second yellow card for bringing down Walters on a rare counter-attack.
Shawcross then tested Friedel as he met a corner to the near post with a firm header but the American tipped over.
Spurs pushed forward further as time ticked away but Stoke held on for a hard-earned victory.