The home side were on the attack from the start, with Yannis Salibur creating a couple of openings in the first five minutes, before Christophe Kerbrat had a shot blocked while trying to convert from a cross by the midfielder.
The visitors were ahead just seconds later as N'Gog gathered the ball on the rebound, rifling it into the bottom corner.
Guingamp started to see more of the ball as the half-time whistle approached, and were back on level terms just before the interval when Alexis Peuget gave away a free kick just outside the penalty area, leaving Salibur to curl the ball into the back of the net.
The hosts continued their momentum at the start of the second half as Moustapha Diallo crossed the ball in for Younousse Sankhare, but his powerful strike from the edge of the box was a comfortable save for the keeper.
Guingamp's hopes were dealt a blow a couple of minutes later as Salibur picked up his second booking of the evening, leaving the home side a player short for the remaining 38 minutes of the match.
Reims needed just over two minutes to make the most of their numerical advantage, as Nicolas de Preville spotted the run of N'Gog into the box, setting the striker up for his second goal of the night.
With an extra player, the visitors were able to dominate possession for the remainder of the second half, although chances remained scarce.
Devaux could have put the result beyond doubt in the final half-hour when he tried to stab the ball in from close range following a quick break and cross by N'Gog, but he sliced the finish wide, while Prince Oniangue had a long-range shot saved shortly after.
Reims also finished with 10 men on the pitch as Hamari Traore was shown his second yellow card of the night in stoppage time, giving Guingamp some late hope, but Jeremy Sorbon headed over as he tried to convert a free kick from Nicolas Benezet.
The result leaves Reims 12th in the table, while Guingamp sit two place back in 14th.