Lyon moved level on points with Ligue 1 leader Paris St. Germain after a comfortable 3-0 win over Nice at the Stade de Gerland on Saturday.
It was an unhappy return to Lyon for former boss Claude Puel, whose side ended the match with 10 men after David Ospina was sent off in the build-up to the Gomis spot kick.
Lyon's Dejan Lovren saw red after picking up a second yellow late on in what was the only negative of the night for Remi Garde's men.
Rennes goes into the forthcoming two-week winter break in the top four following a 4-2 triumph at Ajaccio in a match that was delayed by 10 minutes after Rennes' fourth goal sparked a pitch invasion.
Julien Feret struck from an indirect free kick in the penalty area after goalkeeper Guillermo Ochoa handled Carl Medjani's back-pass, but a section of Ajaccio supporters, angered by the taking of the free kick, stormed from the stand to protest, forcing referee Ruddy Buquet to suspend the game until order was restored.
Rennes had twice come from behind in the first half, with Feret and Romain Alessandrini equalizing after goals from Adrian Mutu and Fousseni Diawara. Cheick Diarra put his club ahead for the first time before Feret's controversial clincher.
Bastia won by the same scoreline, with three goals in the opening half hour proving decisive against rock-bottom Nancy.
Modeste's second all but sealed victory for Bastia although Nancy, whose run of five consecutive 1-1 draws came to an end, enjoyed a late consolation when Andre Luiz netted.
Defending champion Montpellier saw a run of three straight wins emphatically halted by a 4-1 loss at Lille.
Reims was denied a first Ligue 1 win since early October as Pedrinho struck at the death to rescue a 2-2 draw for Lorient, whose six-match winning streak came to an end.
Bordeaux's goalless stalemate with Troyes, which is six points adrift of safety, was its fifth draw in a row.