Spurs were mere minutes away from being dumped out on away goals after Maxime Gonalons had pulled the Ligue 1 side back into it in the 17th minute, trimming the visitors' 2-1 first leg lead.
Gonalons planted a free header home from Clement Grenier's well-taken free-kick to level the aggregate score at 2-2 and make it 1-0 on the night.
But Dembele saved the day for Spurs late on, driving into the bottom corner from the edge of the box to fire Andre Villas-Boas' men into the next round, where a glamour tie with Inter Milan awaits.
Clement Grenier swung in a teasing corner in the first minute, Brad Friedel was caught in two minds and Jan Vertonghen put in an emergency clearance before Lyon could pounce. Grenier tested Friedel again soon after, whipping over a looping ball, but Alexandre Lacazette could only head into the goalkeeper's arms.
Other than the lively Lewis Holtby, who was making his second start, Tottenham failed to impress. Careless defending from Benoit Assou-Ekotto allowed Lacazette to break free down the right, but luckily for the Cameroonian, referee Wolfgang Stark brought play back for a foul.
Gareth Bale, so devastating in the first leg with two stunning free-kicks, was anonymous for the first 15 minutes. The first time the Welshman had a say in the course of the game was when his shoddy marking allowed Lyon to break the deadlock after 16 minutes.
Kyle Walker fouled Lisandro and when Grenier clipped the free-kick to the near post, Bale turned away from Gonalons - who beat a rooted Friedel from eight yards.
Walker was having a poor game at right-back. The England defender was booked soon after for fouling Samuel Umtiti. He was not the only one underperforming, though. Scott Parker and Dembele were painfully slow in possession in midfield while Emmanuel Adebayor struggled up front on his own.
Spurs came out much more confidently after the break. Parker worked the ball out to Adebayor, who whipped a beautifully shaped ball to the back post, but Bale sidefooted barely an inch wide to squander a golden chance.
Lyon raced up the other end and Tottenham needed a superb save from Friedel to deny the ever-impressive Grenier. The goalkeeper then made an error trying to clear a chipped ball over the top, but Assou-Ekotto muscled past Lacazette to retrieve the ball. The forward appealed for a penalty but it was not given.
If Tottenham were going to get an equaliser, it looked like it was only going to come from Bale. Vercoutre had a nightmare trying to handle the Welshman's swirling shots last week and he looked uncomfortable punching away two similar efforts in quick succession. Adebayor then hooked the ball on to the top of the Lyon bar and Aaron Lennon had a penalty appeal turned down soon after.
Clint Dempsey went close twice soon after his introduction, and it seemed Spurs were destined to fail. Dembele had other ideas, however, dropping his shoulder to beat Grenier before hitting a powerful long-range shot beyond Vercoutre.
|Lyon||Team Statistics||Tottenham Hotspur|
|1||1st Half Goals||0|
|4||Shots on Target||4|
|3||Shots off Target||6|
|37.3||1st Half Poss.||62.7|
|36.5||2nd Half Poss.||63.5|