Midfielder Grenier coolly slotted home early on and netted a second-half penalty as Remi Garde's side, now on 48 points from 25 games, leapfrogged Olympique Marseille and narrowed the gap with Paris St Germain to three points.
Gueida Fofana scored the second goal with a superb 25-metre strike twenty minutes into the second half and Alexandre Lacazette wrapped it up with a volley from just outside the box.
Bordeaux, who had conceded only 16 goals coming into the game, are ninth on 38 points.
St Etienne's hopes of securing a Champions League playoff spot took a knock as Les Verts, fifth on 41 points, were held 1-1 at Stade Reims after Gaetan Courtet cancelled out Pierre-Emerick Aubameyang's opener.
St Etienne now trail Nice, who beat Bastia away 1-0 on Saturday, by one point.
PSG travel to strugglers Sochaux later on Sunday (2000 GMT).
Lyon, who had lost their last three games in all competitions conceding eight goals, produced a solid performance at Chaban Delmas.
After 15 minutes, Grenier collected a Bafetimbi Gomis through ball and kept his composure to fire it past Cedric Carrasso.
Bordeaux barely threatened and fell two goals behind when Fofana unleashed a shot straight into the left top corner.
The hosts had only themselves to blame for the third goal as Julien Faubert, back to Bordeaux after six years of tribulations that even took him to a loan spell to Real Madrid, fouled Fofana in the box.
Grenier converted the resulting penalty in the 73rd minute and Lacazette's volley followed two minutes later to seal the one-sided encounter.
- Sports & Recreation
- Alexandre Lacazette
- St Etienne