After Marseille lost at Reims 3-1 earlier Saturday, PSG played their part then could have clinched the title if Monaco drew at home to Riviera rival Nice in the late game.
They were 1-1 until the 73rd minute when Monaco scored again and won 2-1.
Monaco moved up to second place and was 21 points behind PSG with seven games left, meaning PSG needs only a draw at home to Angers next Saturday to again be crowned as the French champion.
PSG fell behind early to a well-worked goal when Swedish forward Lucas Stassin headed in.
But after Gonçalo Ramos equalized with a late first-half penalty, 17th-placed Saint-Etienne collapsed after the break. Khvicha Kvaratskhelia fired PSG ahead and Désiré Doué scored twice either side of a João Neves goal.
The 17-year-old substitute Ibrahim Mbaye completed the rout in the 90th minute with his first goal for PSG.