The 2016 Masters champion went into the final round at St Andrews with a three-shot lead and carded a 68 to get to 18 under and win by two from fellow Englishman Tyrrell Hatton and Joakim Lagergren of Sweden.
Willett extended his lead to four in the early stages, and though briefly reeled in by Richard Bland, birdies at the ninth and 10th handed him a three-shot advantage once more and eight pars on the difficult closing stretch saw him close out a first victory in two years.
Following his triumph at Augusta National Willett slipped to 462nd in the world before winning two of the European Tour’s elite Rolex Series events in 2018 and 2019.
This season has seen him struggle with Covid-19, wisdom teeth, appendicitis and a hernia but he has once again bounced back to win his eighth European Tour event and could move back into the world’s top 100.
“It’s been a couple of years of average stuff again,” said the Yorkshireman, who turned 34 on Sunday. “I seem to do this a lot actually, go up and down.
“It’s been a very unfortunate last eight months, really. Every time the game feels like it’s been in a nice place, we’ve had a couple of things, issues with health, just things that you can’t really avoid.
“Covid, wisdom teeth, appendix, they are just things and they seem to have knocked us back a peg or two and we’ve never really been able to get the momentum going in.
“For everyone watching, this seems quite out of the blue, but the practice I’ve been doing at home and the inner belief we have every time we get in and out of position to do something was proven again.”
Willett birdied the first and third from six feet and, while he dropped a shot after finding a nasty lie on the fourth, he hit straight back with an up-and-down on the par-five fifth.
Bland made four birdies in a row from the fourth and added another at the ninth to join the lead but Willett almost drove the same hole and secured a birdie before rolling in a 40-foot putt at the 10th.
Hatton admitted there was fatigue after being part of the European Ryder Cup team hammered 19-9 last week, but the two-time winner of this event carded a closing bogey-free 67 to sit a shot ahead of Bland and another Ryder Cup player, Shane Lowry.
Tommy Fleetwood finished at 13 under to make it three members of Padraig Harrington’s team in the top 10 and Willett – who played in the loss at Hazeltine in 2016 – is hoping to once again represent Europe in 2023.
“It’s the first time I’ve watched the Ryder Cup and been bitterly disappointed I wasn’t there,” he said.
“It wasn’t nice to watch the guys get beat when you know that you think you can add something to the team. But I wasn’t playing well enough to get on the team.
“I very rarely do long-term goals but I would definitely love to be on that team in two years’ time to try and help out.”