France were quickly into their stride with a try in the opening minute after turning over possession. Flyhalf Camille Lopez' cross-kick to the corner was caught by Thomas, who touched down for his first international try.
Three penalties by Clermont Auvergne's Lopez in the first half highlighted French dominance as the Fijians struggled to create a scoring chance in the opening 40 minutes.
Fiji came out with more bite at the start of the second half and converted a penalty before lock Leone Nakarawa burst past Thomas before feeding Alipate Ratini to cross the line.
But the Fijian fightback galvanised a French team driven forward by South African-born fullback Scott Spedding who twice set up Thomas to score.
Pascal Pape dived over after a well-worked French maul and Wesley Fofana crowned the victory after a clever chip over the top by substitute Remi Tales.