Neymar’s early opener for PSG was cancelled out by Duje Caleta Car before Mbappe’s penalty sealed the win and put PSG on 74 points.
They now lead second-placed Marseille, who had a late equaliser disallowed, by 15 points with six games left and could be crowned champions next weekend.
Jorge Sampaoli’s side have a three-point lead over third-placed Stade Rennais as both teams battle it out for second place and direct qualification for the Champions League’s group stage.
PSG got off to a lively start and it did not take long for Mauricio Pochettino’s men to take the lead in front of an almost silent crowd as the club’s normally noisy Ultras, or hardcore fans, signalled their frustration again after last month’s elimination from the Champions League.
“I was not expecting this kind of atmosphere. For a classic, you have to put everything aside,” said captain Marquinhos. “It was not the moment to do this. We understand them, but today was a day to put your pride aside.”
Marseille stayed compact and levelled on 31 minutes as Caleta Car tapped in from a packed goalmouth after Gianluigi Donnarumma missed the ball from a corner.
PSG piled on the pressure but were repeatedly caught by the offside trap, with Lionel Messi denied a goal.
They were, however, rewarded for their domination on the stroke of half-time when they were awarded a penalty after a VAR review showed that the ball had hit Valentin Rongier‘s elbow on the edge of the area.
Mbappe buried the spot kick five minutes into first-half stoppage time for his 21st goal of the Ligue 1 season.
Tempers flared after the break and Neymar protested vehemently after picking up a yellow card for a foul on Matteo Guendouzi and needed a couple of minutes to cool down.
PSG had another goal disallowed in the 75th minute when Mbappe was ruled offside after being set up by Messi.
Marseille celebrated what they thought was an equaliser five minutes from full-time, only for William Saliba‘s goal to be ruled out for yet another offside.