McIlroy carded a final round 66 to end with a 21-under aggregate score of 267, having begun the day on 15 under, a shot adrift of England’s Sullivan at the $8 million European Tour’s season finale.
Playing partner Sullivan’s 68 left him on 268, one stroke short despite stretching his advantage early on as McIlroy seized control mid-round with seven birdies in 11 holes.
The four-time major winner could even afford to take a drop on the 17th after finding the water, eventually recovering to make a 40-foot bogey before sealing victory with a 12-inch par putt on the final green.
It’s probably the longest putt I’ve ever made for a bogey; I don’t think there’s been one that’s come at a better time, so definitely the best bogey of my career,” the Northern Irishman told reporters.
The victory was his fourth of the year and first since May, McIlroy having missed three tournaments including the British Open at St. Andrews after rupturing ankle ligaments while playing soccer in July.
McIlroy’s 12th tour title means the 26-year-old also retained the Race to Dubai, formerly known as the Order of Merit and given to Europe’s top money earner. He was also victorious in 2012 and 2014.
Ahead of play, McIlroy practiced his putting until almost the last moment while Sullivan casually waited on the opening tee. But the duo seemed at ease with each other, amiably chatting and joking as they walked the first fairway.
Sullivan, ranked 53 in the world, sunk an eight-foot birdie on the first after seeing McIlroy miss a 15-footer that ended just short.
Both birdied the second, Sullivan moving to 18 under and McIlroy two adrift on 16 under.
On the par-three fourth, McIlroy seemed perturbed after pulling his tee shot and although he recovered with an 80-foot putt to within four feet of the pin, he scuffed his next effort for a bogey that gave Sullivan a three-stroke advantage.
The duo again picked up shots with close range putts on hole five, McIlroy’s the first of three successive birdies that lifted the world number three to 18 under.
Sullivan also birdied six but then bogeyed eight – his first dropped shot in 22 holes – as his lead was reduced to one stroke by the turn.
“I gave it everything on that front nine, I just couldn’t quite get the putts to drop on the back nine,” said Sullivan.
“I didn’t really hit it close enough again, (but) to come up head-to-head with someone of Rory’s quality was absolutely awesome and something that will stick with me for a long time.”
McIlroy took a lead he was not to relinquish on 14, tapping in from two feet for a third birdie in four holes, although a bogey on 17 narrowed his lead to one stroke and gave Sullivan a final chance.
The Englishman’s 20-foot birdie attempt on the 18th, which would have forced at least a play-off, rolled inches wide and McIlroy then took two putts to seal victory by a stroke.
“If I hadn’t won today, I wouldn’t have been too happy,” said McIlroy. “Andy had chances to make a couple of birdies and didn’t quite convert and I was able to just hang on.”
South Africa’s Branden Grace (67) was third on 273, while compatriot Charl Schwartzel (69) was one of six players tied on 275.
(Reporting by Matt Smith, editing by Alan Baldwin)