Substitute Clarck N'Sikulu and right wing Modou Sougou scored in the final 15 minutes to leave the Ligue 1 leaders, who were unbeaten in 26 league games, just one point ahead of Lille and two clear of Monaco.
Evian, who had never before beaten PSG in Ligue 1, stunned the visitors in the 75th minute when Sougou pulled the ball back to N'Sikulu who steered it low into the net.
Sougou added his name to the shock scoreboard with the second goal in the 87th minute as PSG did not score in a league match for the first time this season and failed to equal their own unbeaten run of 37 games dating back to the 1993-94 season.
Lille and Monaco closed in on PSG with victories on Tuesday.
Monaco won 3-0 at Cote d'Azur rivals Nice and Lille overcame Marseille 1-0 at home in the north.
Marseille are eight points behind Monaco in fourth with Nantes in fifth, a point further back, after a 2-1 home win over Valenciennes.
PSG got on top towards the end of the first half after their strikers Zlatan Ibrahimovic and Edinson Cavani struggled against a well-drilled home defence which regularly caught them offside.
The temperature dropped below zero degrees Celsius in the second half but that did not cool the determination of Evian, who had not won their previous three games, from going for a shock result.
Their first clear chance on target, a shot from defender Brice Dja Djedje at a corner five minutes before they took the lead, was saved on his line by goalkeeper Salvatore Sirigu.
PSG substitute Javier Pastore had a late chance with a header but it was comfortably saved by Jesper Hansen.