Switzerland midfielder Denis Zakaria scored twice as Monaco defeated Nice 3-2 in Ligue 1 on Sunday to move up to third and within a point of their Cote d'Azur rivals.

Zakaria powered in a 30-yard drive to put Monaco ahead at the Allianz Riviera only for Gaetan Laborde to equalise from the spot after a foul by Thilo Kehrer.

Monaco regained the lead early in the second half when Zakaria headed in Takumi Minamino's cross, with Nice captain Dante then sent off for catching the Japan international after a sliding challenge.

Evann Guessand's looping header brought Nice level for a second time, but Aleksandr Golovin followed in a rebound to grab the winning goal with 13 minutes left.

Monaco's first win in four games pushed them into the final automatic Champions League qualifying spot as they moved above both Brest and Lille, who lost 3-1 at leaders Paris Saint-Germain on Saturday.

After a 13-match unbeaten run to start the season, Nice have now lost four times in eight matches -- allowing PSG to open up a commanding 11-point lead at the top.

Maxence Caqueret struck a brilliant late winner as Lyon recovered from a goal down to beat Montpellier 2-1 and climb three points clear of the relegation play-off place.

Arnaud Nordin headed Montpellier in front midway through the first half, but Alexandre Lacazette squeezed in an equaliser to bring the visitors level with 16 minutes to play.

Caqueret then hammered in via the underside of the crossbar from the edge of the area to earn Lyon a third straight win in all competitions following Wednesday's French Cup defeat of Lille.

"We're not happy with the way we played but the result is a good one," said Lyon coach Pierre Sage.

"It's the first time we've come from behind to win. But the way we played was not really equal to the result."

Lyon, who had just seven points from 12 games when Sage took over late November, have won five of nine league fixtures since to pull away from the bottom of the table.

Brest had to settle for a third successive draw as they were held 1-1 at bottom side Clermont, while Lorient boosted their survival hopes with a 2-0 victory over Reims.

Rennes edged Le Havre 1-0 to register a fifth win in a row as Nantes earned a crucial 2-1 victory away to fellow strugglers Toulouse.