Verstappen started 10th but rose to fifth in the opening laps, from where he was put on an aggressive strategy to apply pressure on Ferrari and Mercedes at the pit stop windows.
His second stop on lap 38 undercut him into net second place behind leader Charles Leclerc, and the Red Bull Racing car’s pace on fresh medium tyres spooked Ferrari, which responded immediately by bringing in the Monegasque from the lead.
But it put him on the unfancied hard tyre despite the white-walled rubber proving uncompetitive on the several other cars that had tried them up to that point.
He maintained an advantage over Verstappen, but the previously dominant Ferrari car had had its pace neutered, and he was easy pickings for the championship leader with a move into the first turn on lap 41.
With clear air in the lead and with Leclerc unable to strike back, the Dutchman was free to cruise to manage his tyres to the flag despite a late sprinkling of rain and record a crushing and unlikely victory to head into the midseason break on a high.
“I was hoping I could get close to a podium,” Verstappen said of his pre-race expectations. “It was a crazy race and of course I’m very happy that we won it.
“We had a really good strategy - we were really reactive and always pitting at the right time.
“It was very good. I was battling a lot of guys, so it was a lot of fun out there.”
Leclerc’s misery continued, and on the hard tyres he sank like stone off the podium. Eventually his team relented on its experiment and gave him a third stop to switch to soft tyres, but it dropped him to sixth, from where he couldn’t recover.
It dealt a devastating blow to his already fading title hopes, putting him 80 points behind Verstappen, or more than three clear race wins of 25 points.
It was a miserable day for Ferrari overall, with Carlos Sainz unable to salvage even a podium place from a race the team targeted for a one-two finish.
The Spaniard suffered a couple of slow stops to ensure he couldn’t strategise his was past pole-getter George Russell, and late in the race he was overtaken by Lewis Hamilton on a racier strategy.
Hamilton’s pace was so strong late in the race that he was able to dice with teammate Russell, whose late-race pace was suffering for making an early second stop and was no match for his soft-shod teammate, ceding to the seven-time champion second place.
“I honestly don’t know,” Hamilton said of his late speed. “I was definitely struggling at the beginning of the race and wasn’t sure whether I’d be able to catch the guys up.
“I really want to acknowledge my team, who’ve continued to push and never give up.”
Russell had harboured hopes after qualifying of turning his maiden pole into a first victory, but the Briton was confident he and the team had done the most they could have in the circumstances.
“Amazing job by the team,” he said. “Pole position yesterday, double podium - we’re definitely making progress.”
The team’s second double podium in a row accelerated Mercedes to just 30 points behind Ferrari in the battle for second in the constructors standings, with Red Bull Racing in the lead by 97 points.
Sainz finished a confused fourth, perplexed by his car’s vanishing performance after a dominant Friday.
Sergio Perez was fifth after a slow first stop condemned him to a stint battling in the midfield. Leclerc came close to salvaging fifth from the Mexican but ran out of laps, crossing the line 0.3 seconds behind.
Lando Norris finished seventh at the head of the midfield, but it wasn’t to make up ground on Alpine’s four-point lead for fourth in the teams standings, with Fernando Alonso and Esteban Ocon finishing eighth and ninth.
Sebastian Vettel, who announced his retirement at the end of the season earlier this week, took the final point of the race for 10th ahead of teammate Lance Stroll.
Pierre Gasly finished 12th ahead of Zhou Guanyu, Mick Schumacher and Daniel Ricciardo, who served a five-second penalty for a crash with Stroll.
Kevin Magnussen was classified 16th ahead of Thai driver Alex Albon and Williams teammate Nicholas Latifi, with Yuki Tsunoda last of the finishers.
Valtteri Bottas was the race’s only stoppage, due to a Ferrari engine failure.