Rennes, who have won a club record ninth consecutive home game in the top flight, prevailed thanks to Hamari Traore‘s second-half goal as the visitors suffered their second loss in three league outings.
PSG have 47 points from 19 games while second-placed RC Lens are on 44 after their 1-0 win against AJ Auxerre on Saturday, with Marseille third two points further adrift following their 3-1 victory against Lorient on the weekend.
Despite the win, Rennes slipped down to fifth on 37 points, behind AS Monaco on goal difference after the principality side destroyed AC Ajaccio 7-1 earlier on Sunday with a Wissam Ben Yedder hat trick.
“Two defeats in the new year, we need to be more aggressive and solid. If we find it again it will be fine,” said PSG captain Marquinhos.
“We have to find it quickly. It’s a lot of points that we dropped. Behind us, Lens and Marseille will not slow down.”
Kylian Mbappe, back after returning to training early following the World Cup final, was on the bench with Hugo Ekitike starting up front alongside Lionel Messi and Neymar, but it was the injured midfielder Marco Verratti that PSG missed the most.
Midfielder Warren Zaire-Emery, 16, became the youngest player to start a Ligue 1 game for PSG and was nowhere near the Italian’s level.
Donnaruma denied Lovro Majer to keep his team afloat five minutes later as PSG struggled to threaten, prompting Christophe Galtier to replace Ekitike with Mbappe 10 minutes into the second half.
Rennes continued to push and were rewarded in the 65th minute when Traore found the back of the net with a low angled shot from Adrien Truffert‘s pass.