Bastia midfielder Florian Thauvin, who is remaining with Bastia for the rest of the season having signed for Lille in January, put the hosts in front just before half-time although Lisandro Lopez levelled in the 53rd minute.
That was as good as it got for the visitors, who fell behind almost immediately afterwards through Anthony Modeste's strike while Thauvin's second on the hour left them with a mountain to climb.
Wahbi Khazri ensured there was no way back as Lyon, who could trail Paris Saint-Germain by seven points if the league leaders beat St Etienne on Sunday, suffered their heaviest defeat of the season.
Evian's smash-and-grab 2-1 win at Lille dragged them away from danger and ended the hosts' fine run of form to dent their European hopes.
Salomon Kalou put Lille ahead after just seven minutes, but after Dimitri Payet hit the upright, Saber Khelifa levelled on the half-hour mark and Kalou then scored an own goal in the 67th minute before missing a spot-kick.
Lorient answered coach Christian Gourcuff's complaints about conceding late goals by scoring two early to set up a 4-0 win over Brest.
Lorient have seen their hopes of European football fade thanks to late defeats, but made sure there would be no such problems today with goals from Julien Quercia and Yann Jouffre in the opening seven minutes before further strikes from Wesley Lautoa and Gilles Sunu.
The victory puts them back within five points of fourth place, although St Etienne and fifth-placed Nice both play on Sunday.
Lille are sixth after their defeat, still head of Montpellier who were held to a 1-1 draw at home to struggling Troyes.
The hosts were looking to get their European push back on track after last week's defeat to Nice and things looked to be going their way when Gaetan Charbonnier struck early on. However, Troyes, second from bottom in the table, responded with an equaliser from Corentin Jean after the restart.
Sochaux missed the chance to climb back out of the relegation zone after conceding a late equaliser in a 1-1 draw at home to Valenciennes.
Eric Hely's men, who dropped into the bottom three following successive defeats to last-placed Nancy and Evian, looked set to claim a morale-boosting triumph thanks to Ryad Boudebouz's eighth-minute opener.
However, mid-table Valenciennes had other ideas and teenage substitute Opa Nguette scored a brilliant equaliser eight minutes from time.
Mali defender Mohamed Fofana struck in the 32nd minute as Reims edged out Rennes 1-0 to ease their own relegation worries, moving up to 16th and two points clear of trouble.