Valentin Eysseric's 11th-minute penalty and Renato Civelli's 85th-minute clincher moved the host to within a point of third-placed Marseille, who faces leader Paris Saint-Germain on Sunday evening (Monday AEDT).
Having won just once in its last 18 attempts, defeat for Reims, who had Aissa Mandi sent off for a second booking in the 68th minute, means it remains just a point from safety in 17th place.
With home expectations high, Nice began the game the brighter with Eysseric at the forefront of all its good play.
The on-loan Monaco player was the first to test Kossi Agassa but the Reims keeper got down well to save his cross-shot after Kevin Anin, Alexy Bosetti and Eric Bautheac had combined well.
Moments later, Nice was gifted a golden opportunity when it was awarded a penalty after Bosetti was brought down in the area after a Mickael Tacalfred lunge.
Eysseric took responsibility and made no mistake from 12 yards to score his fifth goal of the season.
Reims continued to struggle with the Nice attack and it could easily have been 2-0 inside 20 minutes after Bosetti found himself one-on-one with Agassa, but the midfielder sliced his attempted chip wide.
It was a similar outcome on the half-hour mark after another incisive Nice attack. Eysseric pulled the ball back into the path of Bosetti but the 19-year-old's shot failed to find the target from a promising position.
The host was dealt a blow early in the second half when its impressive captain Didier Digard went off with a back injury and moments later it had a let-off when Reims' Gaetan Courtet threaded Odair Fortes through on goal but his heavy touch allowed David Ospina to gather.
Improved efforts from Reims in the second half were all but undone with 20 minutes to go when the visitor was reduced to 10 men.
Mandi cynically brought down Nemanja Pejcinovic leaving the referee with no choice but to show the defender his second yellow card of the game.
Nice made full use of its man advantage and nearly doubled its lead through substitute Luigi Bruins with 10 minutes left.
Once again Eysseric was the instigator and he pulled the ball back into the path of the Dutch debutant but his effort was superbly palmed away by Agassa.
The points were all but secured for Nice soon after though when Civelli doubled its lead.
Bautheac whipped a free-kick in and the Argentinian defender sent a header beyond Agassa at the far post.