Race leader Chris Froome (Sky) was gapped on the same climb but managed to rejoin the favourites before the summit. Dan Martin (Quick-StepFloors) improved his position to fifth overall after a late attack earned him seconds.
Mollema unhooked from the splintering breakaway on the descent of the category one Col de Peyra Taillade. The Dutchman then crested the final category four climb alone holding a 19-second advantage over Diego Ulissi (UAE Team Emirates), Tony Gallopin (Lotto Soudal), and Primoz Roglic (LottoNL-Jumbo) when he crossed the line victorious.
“It's really amazing," Mollema said. "I'm so happy to win a stage at the Tour de France. I've worked for it so hard in the last few years. That was a big goal for me. I needed a chance, but a lot of teams wanted to go up the road today.
"I did the first climb full gas, trying to bridge to the first group. Eventually, we made it with 25 guys. That was the first goal.
"Then I just gave it a try in the last 30km. It was a long time riding alone. But I made it!
"This is the biggest win of my career so far. The Tour de France has always been my dream. I'm incredibly happy.”
Dan Martin attacked the GC favourites group as the final descent plateaued and Mollema had only five kilometres to race. As the final kilometres ticked by for the Irishman, he came across some strong chasers including Simon Geschke (Sunweb) and Thomas de Gendt (Lotto Soudal) who visibly worked with him to earn more seconds.
Martin crossed the line 14 seconds ahead of Froome and Landa, and as a result moved ahead of Landa by five seconds to fifth overall.
Froome shaken, but not stirred
AG2R's pace managed to cause a slight split as the GC favourites approached the Col de Peyra Taillade which Froome missed due to bad positioning. The Brit was seen flicking his hand as he talked with a team mate after latching back on. Moments later, Froome suffered a puncture but with the race on, no unwritten rule was applied.
After a fast wheel change, the race leader went to work with Mikel Nieve and Sergio Henao to peg back the 30-second deficit to the other favourites on the steep ascent. Froome looked cooked but Nieve and Henao burned themselves to deliver him back as far as they could.
Landa fell back as the gap reduced and dragged him back to the front, reaching the others with several kilometres to the summit. His Tour was saved.
Michael Matthews wins the intermediate sprint
Matthews worked hard with Geschke and twelve other riders to join early leaders Warren Barguil (Sunweb), Serge Pauwels (Dimension Data), Damiano Caruso (BMC), Dylan van Baarle (Candonnale Drapac) and Tsgabu Grmay (Bahrain Merida) after the first category one climb.
The Australian easily won the maximum intermediate sprint points and now sits 79 points behind Marcel Kittel in the green jersey competition.
After the intermediate sprint, the breakaway was a group of 28 riders which held a seven minute lead over the bunch until Tony Martin (Katusha Alpecin) tried his chances on a small descent with 66km to go.
The rider known as the Panzerwagen faltered on the Taillade as did the breakaway which splintered behind him in various formations back to the bunch.
Barguil stayed away all day and took the maximum points on all the climbs except for the final category four climb which Mollema took care of.