It looked like Bale might just be upstaged when his first wonder goal was cancelled out early in the second half by Samuel Umtiti's stunning strike.
However, the Welshman netted again in the dying seconds to give Spurs a narrow advantage ahead of next week's return leg.
Lyon posed some problems for the home side early on and had a decent penalty shout turned down when Bafetimbi Gomis tumbled under a challenge from Jan Vertonghen.
Tottenham applied pressure down the right through Aaron Lennon and Kyle Walker, while Emmanuel Adebayor fired wide after being released by a terrific Mousa Dembele pass.
Bale then spurned a glorious chance to break the deadlock when he shot wide from close range after Walker's low cross had served up what looked to be the simplest of finishes.
However, Bale made amends with a fantastic 35-yard free-kick on the stroke of half-time which dipped and swerved as it flew past Remy Vercoutre.
Lyon came out strongly after the interval and equalised with a magnificent goal in the 55th minute. William Gallas' clearing header found Umtiti on the corner of the area and he smashed a rasping half-volley into the top corner.
The goal lifted Lyon and Alexandre Lacazette went close to putting them ahead after a weaving run, only for Friedel to tip his shot over.
Tottenham weathered the storm and pressed forward again as Bale was twice denied by Vercoutre.
Bale continued to provide the main threat and, after again being denied by Vercoutre with just a few minutes remaining, he was handed another chance in stoppage time following a foul 25 yards from goal.
Like his first goal, Bale again managed to get his shot over the wall and back down again to beat a despairing Vercoutre.