American Steve Stricker held his nerve to win the rain-delayed Memorial Tournament at Muirfield Village.
The 44-year-old was leading by two in Ohio before a tense finish in which he bogied the 18th.
But it was enough for him to finish on 16 under to beat Matt Kuchar and Brandt Jobe by a stroke, for his 10th career victory.
Northern Ireland's Rory McIlroy finished five shots behind Stricker, after a final-round 68.
Stricker, who led by three shots going into the final round, birdied five of the opening eight holes to increase his lead to four shots after Kuchar and Jobe took advantage of a huge wobble from Jonathan Byrd.
Byrd began the day in second place but saw his challenge disappear after a bogey on the third and a double-bogey on the eighth.
Stricker, whose win moves him to number four in the world rankings, twice saved par from bunkers, at the 16th and 17th, after a two-and-a-half-hour rain delay, but missed the par putt at the 18th before tapping in for victory.
"It wasn't pretty. It's hard not to think about those last closing holes and just the unknown," he said.
"You don't know what's going to happen with the other players, you don't know how you're going to perform under the stretch, under the gun. At that point, you just want to get it done."
McIlroy's performance is a boost to his confidence ahead of the US Open, which begins on 16 June at Congressional Country Club near Washington.
"I felt as if I played really well this week, I just made a few too many mistakes, which really cost me," he said.
"We'll have to try and cut those out before the US Open in a couple weeks' time. But there's definitely a lot of positives to take from how I've played this week."
New world number one Luke Donald finished in a six-way tie for seventh, alongside Byrd on eight under, while Phil Mickelson was one shot further back after finishing with his best round of the week - a 67.