Ligue 1 Wrap: Marseille winning run ended
Marcelo Bielsa's men had looked an unstoppable force at the summit of the French top flight, having scored a total of 22 goals on their winning streak.
However, in Lyon they came up against a side who themselves were defending a six-game unbeaten run and the home side looked reluctant to give up that record without a fight.
Yoann Gourcuff fired over in the opening minutes as Lyon looked to gain an early advantage, before testing Steve Mandanda with a shot at the beginning of the second period.
Anthony Lopes did brilliantly to keep out an Andre Ayew volley at the other end, but Gourcuff's persistence eventually paid off as he scored the only goal of the match - a rifled effort from 12 yards - in the 65th minute.
Lyon could have put the result beyond all doubt in stoppage time, but Mandanda did well to keep out substitute Clinton N'Jie.
The hosts climb to third in the Ligue 1, while Marseille's cushion over champions Paris Saint-Germain at the top now stands at four points.
Carlos Eduardo brought Guingamp crashing back down to earth with five goals in a 7-2 demolition job on Sunday.
Ligue 1's basement club had won at Lille last time out to call time on a four-match losing streak, and that momentum looked set to continue when Claudio Beauvue opened the scoring in the eighth minute.
However, things soon went downhil for the home side, with Eduardo completing a hat-trick by the 43rd minute and Alassane Plea making it 4-1 in first-half stoppage time.
There appeared to be no stopping Eduardo, who added to his tally with goals in the 51st and 65th minutes, before Ronnie Schwartz made a small dent in the Nice advantage.
Guingamp's reprieve did not last long, however, as Eric Bautheac found the net a minute later to round off a sensational day at the office for Nice, who climb to seventh.
Saint-Etienne went fourth courtesy of a 1-0 victory over Metz - Max Gradel scoring the only goal of the encounter.
In the day's other match, Rennes subjected Lille to a third successive defeat with a 2-0 win at Stade de la Route de Lorient.
Habib Habibou opened the scoring a minute into the second half, before Abdoulaye Doucoure doubled the lead eight minutes later.