Bordeaux ensured they would hang onto fourth on goal difference as they saw off Valenciennes 2-0 with close-range finishes in each half from David Bellion and Ludovic Obraniak.
Nice, who lost to Bordeaux last weekend, are right behind, level on 38 points, having won 2-0 away to Brest.
Nemanja Pejcinovic put them ahead after 13 minutes, slamming home after Brest failed to deal with Xavier Pentecote's corner, and they doubled their advantage only seconds into the second half when Brahim Ferradj put through his own net.
St Etienne, one point behind in sixth, were grateful to the crossbar for preserving their 2-1 away win over relegation-battling Sochaux.
Sloan Privat's injury-time header came back off the bar as St Etienne hung on for a victory that would have been assured had Pierre-Emerick Aubameyang not missed an 81st-minute penalty.
Aubameyang had put the visitors in front with a powerful volley into the top corner after 22 minutes, but they missed chances to add to their lead before Edouard Butin levelled in the 71st minute.
Parity lasted only five minutes before Fabien Lemoine's powerful shot picked up a deflection on its way to goal, but Aubameyang's penalty miss left St Etienne hanging on.
That saw St Etienne move above Rennes on goal difference as les Rouges et Noirs needed a last-minute goal from substitute Axel Ngando, only on the pitch for a matter of seconds, to take a 2-2 draw away to Lorient, who are just two points further back in the congested upper mid-table.
Jeremie Aliadiere had put Lorient in front 10 minutes from time after Mevlut Erdinc cancelled out Yann Jouffre's opener, but just when Lorient looked poised to climb above Rennes in the table, Ngando scored with his first touch, slipping the ball through the goalkeeper's legs.
Lille slipped further off the pace as they were held to a 1-1 home draw by relegation-battling Troyes, needing Divock Origi's 74th-minute strike to cancel out Fabien Camus' first-half opener.
The result leaves them seven points off fourth down in 10th place.
Bastia and Evian played out a goalless draw.