The victory cut Leclerc’s lead over Verstappen to 19 points in the championship, while the Monegasque’s Ferrari teammate Carlos Sainz completed the podium.
Verstappen got off to a fast start at the Hard Rock Stadium — which staged the first of two races in the United States this season — as he overtook Sainz at turn one.
He then started to close the gap on Leclerc and passed his rival on lap nine — an advantage he would maintain for the remainder of the race.
“It’s a very good comeback,” said Verstappen.
“I didn’t even do a [practice] start, so I didn’t know what to expect in the actual start. But we had a good launch and I saw the opportunity to go around the outside [of Sainz] in turn one, so I tried. Luckily, it worked.”
There was a star-studded crowd in the paddock for Miami’s first Formula One race, including Tom Brady, David Beckham and Michael Jordan, who all posed for a photo together alongside seven-time F1 champion Lewis Hamilton.
Serena and Venus Williams were also in attendance, as were musicians Will.i.am, Pharrell Williams and DJ Khaled.
A third American race in Las Vegas will be added to the calendar from next season, joining Miami and Austin.
Verstappen’s third victory of the season was hard fought, even though he led for the majority of the race. A crash between Pierre Gasly and Lando Norris on Lap 41 triggered the safety car, and when racing resumed on lap 47, Leclerc pushed hard to retake the lead.
But despite getting to within half a second of his rival, Leclerc had to satisfy himself with second place as he improved his championship tally to 104 points.
“At the safety car restart on the hard [tires], we were very strong, but four or five laps, they [Red Bull] seemed to stabilize the tires in a better window and there they are just quicker than us,” said Leclerc.
Red Bull’s Sergio Perez finished fourth, ahead of the Mercedes pair of George Russell and Lewis Hamilton.
The F1 season continues on May 22 when Barcelona hosts the Spanish Grand Prix.