The Brit took victory from Verstappen who had to manoeuvre his way up from seventh on the grid, while the pair were joined on the podium by 40-year-old Fernando Alonso who made the top three for the first time in seven years.
Hamilton has now won at a record 30 different circuits after cruising to victory at the debutant Losail track, converting his dominant pole position with ease thanks in part to pre-race drama.
Title leader Verstappen was dominated in qualifying by almost half a second from Hamilton, and things later got worse when the Dutchman was given a five-place grid drop for not slowing under yellow flags.
Despite starting from the fourth row, Verstappen was quickly up amongst it, bursting off the line past Valtteri Bottas, Carlos Sainz and Lando Norris, before being given a tougher task by Alonso.
The Spaniard forced the 24-year-old off track, but he soon overtook Pierre Gasly, and later Alonso's Alpine, with Hamilton next on his list.
It quickly became clear that Hamilton had the race under control with Mercedes mirroring Red Bull's two-stop pit strategy, and the only real fight at the front was for the extra fastest lap point, which Verstappen took.
The closing stages became all about the final spot on the podium, with the No.2 Mercedes of Bottas dropping out due to a puncture, leaving the place open for Red Bull's Sergio Perez to claim.
However, the Mexican was held at arm's length by Alonso, who was beaming post-race at his brilliant one-stop pit strategy when many failed to tame their tyres.
Hamilton commented on one of his easier victories of the season saying: "It was pretty straightforward, it was pretty lonely at the front."
But at Red Bull it was a second week of making do, with team principal Christian Horner telling Verstappen the result was 'damage limitation' in back-to-back races.
By far the happiest man on the rostrum was Alonso, who took his first top three finish since China in 2014 with Ferrari.
"It's been seven years but finally we got there!" he said. "I'm so happy for the team.
"The team were excellent and the reliability of the car is great at the moment. I've waited so long for this and I'm so happy!"
Elsewhere, Aston Martin's Lance Stroll had plenty to smile about, finishing in sixth place behind Perez and Esteban Ocon for his best result of the season.
Formula One will now take a week's break before continuing one of the sport's greatest title fights, when racing resumes with a double header in Saudi Arabia and then Abu Dhabi to end the season.