Harry Kane had given the visitors the lead after just nine minutes in the final match of the 2016-17 campaign, but France were ahead before half time courtesy of goals from Samuel Umtiti and Djibril Sidibe.
England's second half got off to a perfect start when Kane doubled his personal tally for the evening from the penalty spot after Raphael Varane had been sent off but, despite having to play the vast majority of the second period with a numerical disadvantage France still found a way to win, with Ousmane Dembele scoring the winning goal 12 minutes from time.
The match was preceded by tributes to the victims of the recent terror attacks in Manchester and London, with both sets of fans joining together to sing the national anthems before an impeccably-observed minute's silence before kickoff.
The game itself got off to a slow start until England took the lead after just nine minutes, with captain Kane continuing his remarkable recent goalscoring form by applying the finishing touch to a slick team move which saw Dele Alli, Raheem Sterling and Ryan Bertrand all involved.
France had the ball in the back of the net themselves five minutes later, but Giroud's crisp volley into the top corner was ruled out for offside and referee Davide Massa resisted the temptation to consult the video assistant referee available to him.
The hosts should have been level shortly afterwards, though, when in-demand teenager Kylian Mbappe was released down the left flank and played the ball inside for Dembele, only for the Borussia Dortmund forward to fire wide when well placed.
The equaliser did arrive midway through the first half when Olivier Giroud's downward header was clawed away by Tom Heaton, but the England goalkeeper - making his full debut for his country - could only push it into the path of Umtiti, who converted the rebound.
It was the home side who continued to look the most dangerous coming forward as the half progressed, and Mbappe almost completed the turnaround shortly after the half-hour mark when he skipped away from two England defenders before being denied by Heaton at the near post.
England responded with a good spell of their own, though, and Bertrand tested France keeper Hugo Lloris with a low drive from long range before Eric Dier turned the resulting corner inches past the post having been found by Gary Cahill's cushioned header.
The visitors broke in behind the defence again moments later when debutant Kieran Trippier cushioned a volley into the path of Sterling, but the winger turned down the opportunity to go for goal himself and that allowed Varane to get back and intercept the attempted cross.
This time the resulting corner was claimed by Lloris and the France skipper quickly launched a counter-attack which ended with Dembele slicing an effort well wide after creating space for himself to shoot.
Dembele was enjoying a growing influence on the game, though, and he was instrumental when France took the lead with only two minutes of the first half remaining.
Dembele left John Stones for dead inside the penalty area before seeing his effort saved by Heaton, but once again the ball bounced out into a dangerous area and this time Sidibe was there to stroke home the rebound and send France into the break ahead.
The second half got off to a dramatic start when Alli went down inside the penalty area within a minute of the restart, and the referee pointed to the spot before referring the decision to the experimental VAR system.
After a brief review the Italian official then showed a red card to Varane, and Kane added insult to injury by hammering his penalty down the middle and past Tottenham Hotspur teammate Lloris. It was Kane's 11th goal in his last five outings for club and country and took his tally to 29 in just 25 appearances in 2017.
England quickly looked to capitalise on their numerical advantage and Lloris was called into action by another one of his clubmates moments later when he collected Alli's header from a corner.
It proved to be a conspicuously rare moment of action for the France keeper, though, as the hosts responded well to going a man down and forced half-time substitute Jack Butland into a smart save from Mbappe shortly after the hour mark.
Didier Deschamps's side should have regained the lead 20 minutes from time when a sloppy pass from England allowed France to win the ball in a dangerous position but, having beaten his man inside the penalty area, Mbappe struck the crossbar when he should have scored before Cahill cleared the rebound off the line.
Les Bleus did seal an impressive win shortly afterwards, though, as England once again conceded possession inside their own half and this time were made to pay by Dembele's low drive across goal and into the far corner.
Despite having a man extra England failed to trouble France further and it was the hosts who came closest to the game's sixth goal when Dembele slid a ball through for Mbappe, who was only denied by a fine stop from Butland in stoppage time.
It did not prove to be a costly miss, though, as France's exciting young team saw out a deserved victory to condemn England to a fourth consecutive away game without a win - the first time that has happened since September 2004.