A Bertrand Laquait own goal was enough for St Etienne to beat Evian 1-0 and move up to into third place in Ligue 1.
The win maintained the home side's excellent form with Christophe Galtier's men having yet to lose a league game in 2013.
With 12 minutes left a Renaud Cohade cross was not cleared by the visiting defence and from five yards Hamouma headed home - though the goal was later credited to Laquait as an own goal.
Lyon's bid to qualify for next season's Champions League continued to falter as they succumbed to Grzegorz Krychowiak's second-half penalty and suffered a 1-0 defeat at Reims.
The result moved Reims four points clear of the bottom three but meant Lyon's run of games without a win was extended to five. Remi Garde's men now sit outside the top three for the first time in 2013.
Beforehand, Garde said he still thought second place was an achievable target for his players but a third successive defeat means they have much to do over the final seven games.
Diego was fouled by Milan Bisevac, who was sent off, inside the area and Krychowiak made no mistake from the spot.
Salomon Kalou bagged a brace as Lille continued their recent good form by running riot in a 5-0 win at home to Lorient.
Former Chelsea striker Kalou scored twice - in between Dimitri Payet's strike and Lucas Digne's penalty - as Lille astonishingly opened up a four-goal lead inside 33 minutes.
Ronny Rodelin sealed a comfortable success for the hosts in a second half where they took their foot off the pedal safe in the knowledge that victory was safe.
Rudi Garcia's side have now won four of their last five games and could be an outside pick to claim the final Champions League spot as they are currently just four points behind St Etienne.
Information from the Press Association was used in this report