The hosts dominated possession throughout the game, but were unable to produce an effort on goal until the 23rd minute, when William Remy fired well wide from distance.
The hosts maintained their dominance on the ball after the break, but continued to struggle in front of goal as Hilton fired off target, before Mustapha Yatabare headed straight at Gazelec's substitute goalkeeper Paul Andre Guerin.
Guerin, who was making his first Ligue 1 appearance at 18 years old, denied Yatabare again moments later, while Boudebouz tried his luck from outside the penalty area, only for his effort to go high and wide.
The visitors extended their lead on 74 minutes, when Alexandre Coeff released Zoua down the right, before the forward set up Lungeny for a close-range finish.
Montpellier continued to push for a way into the match, as Souleymane Camara headed straight at Guerin, but Gazelec held on to claim a 2-0 victory.