Johnson finished 10 strokes clear of third-placed Englishmen Paul Casey and Ian Poulter plus Thailand’s Kiradech Aphibarnrat.
Cameron Smith was the best-placed Australian, finishing tied for sixth at one-under with Sergio Garcia and Patrick Cantlay of the US.
Tiger Woods (69) tied for 10th, 13 shots behind Johnson, who started the final round four strokes ahead of McIlroy.
Johnson’s second worldwide win in three weeks – after the European Tour’s Saudi International – lifts him to No.2 in the world rankings, just behind Englishman Justin Rose.
Meanwhile, Martin Trainer has won the PGA Tour’s Puerto Rico Open while Australian overnight leader Aaron Baddeley had to be content with a share of second.
Trainer closed with a five-under 67 at windy Coco Beach Golf and Country Club for a three-stroke victory over four players.
The 27-year-old PGA Tour rookie, in his 11th start on the lucrative circuit, birdied four of the last 10 holes to finish at 15-under 273.
In search of a first win since July 2016, Baddeley’s Sunday began promisingly with a birdie but three front-nine bogeys stifled his charge.
He made birdies on the par-5 15th and 18th holes to sign for an even-par 72.