Roberts, who titled at this championship in 2006, shot a 4-under 68 to finish 54 holes at 7-under 209 and won by a single stroke over second-round leader Gene Jones, who managed his third consecutive 2-under 70 on Sunday.
'I hit some really good shots the last five or six holes coming down the stretch and that was the key,' said Roberts, who tapped in a 3-footer at No. 18 to earn his ninth Champions Tour title.
Ben Crenshaw made a serious run at finally claiming his first Champions Tour win. He shared the lead on the back nine, but, unlike Roberts, couldn't get enough putts to fall late.
The two-time Masters champion shot a 4-under 68 and shared third place with another double winner at Augusta, Bernhard Langer (69), James Mason (70) and first-round co-leader Don Pooley (70). The group finished at 5-under-par 211.
Roberts recorded birdies at two and five to grab a share of the lead, but a three-putt bogey at the eighth knocked him down the leaderboard. That's where he stayed after six straight pars.
With as many as five people tied for first, Jones moved to the top of the board after back-to-back birdies at nine and 10. Alone in the lead at 6-under par, Jones hit a spectacular shot inside three feet at 13. Mason rolled in a birdie putt to match Jones at 6 under, but after Jones kicked in his short birdie putt, Jones moved ahead at minus-seven.
Jones found a bunker at the par-three 14th and chunked his blast from the sand. He advanced it to the fringe, then left himself with almost 5 feet for bogey. Jones made that, but, thanks to a Mason bogey, still held sole possession of first place.
However, Roberts was set to make his move.
He drained a 6-footer for birdie at the 15th and got within one of the lead. Roberts hit a sensational 2-iron at 16 that stopped 2 feet from the stick. Roberts tapped in the birdie and was tied for the lead with his playing partner Jones.
'The 16th was the whole key,' acknowledged Roberts. 'If I don't hit in there stiff for a tap-in, you never know. I wasn't in it until that hole. That was absolutely huge.'
Both parred No. 17, then Roberts hammered his drive down the fairway at the par-5 closing hole at the TPC Treviso Bay. Jones hit it in the rough and that cost him some distance on his lay up. Roberts also laid up, but gave himself less than 100 yards.
Jones hit a good shot 10 feet left of the flag. Roberts pitched his third to 3 feet. Jones played too much break in his putt and tapped in for par, giving Roberts the chance for victory.
The 'Boss of the Moss' cashed in for his first win since last June.
'I made the turn and didn't think I was in it,' admitted Roberts, who pocketed $240,000 for the victory. 'I was thinking I have to pull a rabbit out of my hat.'
Nick Price (67), Joey Sindelar (69), Brad Bryant (71) and last week's Allianz Championship winner Mike Goodes (70) tied for seventh place at 3-under 213.