Diego Ulissi was second at the end of the 189.5km mountainous stage from Laissac-Severac l’Eglise in the Massif Central ahead of Tony Gallopin in third.
But reigning champion Froome had to survive a worrying moment when he suffered a mechanical problem in the last 50km that saw him drop 50 seconds behind his main rivals as he had to take team-mate Michal Kwiatkowski’s bike to continue.
A mad chase ensued as Mikel Nieve, Vasil Kiryienka and Sergio Henao helped pace Froome back to the group, the three-time champion making contact 3km before the summit of the first category col de Peyra Taillade just over 30km from the finish.
The 32-year-old Briton crossed the line alongside most of his main rivals to maintain his 18 second lead over Italian Fabio Aru, with Romain Bardet of France third at 23sec.
The big loser of the day was Colombia’s Nairo Quintana, who was dropped on the Peyra Taillade climb and lost several minutes by the finish, dropping out of the overall top 10.
Meanwhile, Ireland’s Dan Martin was typically abrasive and launched an attack inside the last 12km to gain a few seconds on the other challengers.
The 30-year-old even snatched a place in the standings, moving above Froome’s Sky team-mate Mikel Landa into fifth, now 1min 12sec behind Froome — Martin lost 1:15 a week earlier when taken out by a crashing Richie Porte on a hazardous descent and has even been suffering from back pain ever since.
Up front, Mollema was part of a 28-man breakaway that split on the Peyra Taillade.
A nine-man group formed on the descent when he went on a lone attack, increasing his lead to 50sec at one point as the chase proved disorganised.
Finally four men emerged as Mollema’s pursuers but they couldn’t bridge the gap with Italian Ulissi settling for second 19sec behind the winner, with Gallopin third and his French compatriot Warren Barguil, the winner of Friday’s Bastille Day 13th stage, fourth at 23sec.