Julian Draxler put the defending champions ahead from a rebound after Mauro Icardi hit the post.
Rony Lopes smashed home an equaliser off the underside of the bar after a poor Marquinhos pass – and Amine Gouiri went close to giving Nice the lead as he struck the bar.
But on-loan Everton striker Moise Kean scored PSG’s winner from Icardi’s pull-back.
PSG – wearing a new pink and purple fourth kit – go above Lille, who play Brest on Sunday, on goal difference.
Lyon missed the chance to go top when they lost 2-1 to Montpellier on Saturday night.
Also in other news, Manchester city goes 7 points clear with win over spurs