Mickelson had shot a 4-under-par 67 and Holmes a 71 to finish tied at 14-under-par 270. Holmes had to run in a 13-foot putt on the 18th hole to set up the playoff.
Holmes now has two tour victories. The first came in the same tournament in 2006.
"Anytime you win it's sweet," Holmes said.
Mickelson, who also has won the tournament twice, said he was "really happy for J.B -- he's a wonderful player ... ."
Charles Warren had a final-round 70 and placed third at 13-under 371.
'How to Train Your Dragon 2' releases 5-minute clip
Yosemite climber falls 30 feet, suffers major injuries