Campbell completed his fourth tour title at 12-under-par 276 despite a three-putt bogey at the par-5 closing hole.
Johnson Wagner shot 2-under 70 in the final round, but it was enough to finish alone in second at 12-under-par 276. The big payday for Wagner secures his PGA TOUR card for next year as he stood 123rd on the money list entering the event.
Third-round leader David Branshaw stumbled to a 3-over 75 in the final round. He tumbled into a share of fifth at 10-under-par 278, where he was joined by former PGA champion Shaun Micheel and John Senden.
Campbell got his round going with a birdie on the second. He gave that stroke back as he bogeyed the fourth, but rebounded to birdie No. 5 at Annandale Golf Club. Campbell parred the next four to make the turn at 11 under, one shot behind Haas and Wagner.
The 33-year-old Campbell made his move on the back nine. He birdied the par-5 10th and then dropped his third to the par-5 11th to 2 feet.
Campbell kicked that in for birdie to grab the lead at minus-13. He parred three straight to maintain the lead.
However, Campbell missed the green at the par-3 15th and could not get up and down for par. That bogey left him tied for the lead with Wagner and Micheel.
Campbell atoned for that mistake with a 14-foot birdie putt at the 16th. He made it two in row with as he drained a 16-footer for birdie at 17 to push his lead to three as Wagner bogeyed 17 and Micheel double-bogeyed the hole.
Wagner, playing one group ahead of Campbell, got up and down for birdie on 18 to move within two of Campbell's lead at 12 under.
Campbell found the putting surface with his third to the par-5 closing hole. However, he three-putted for a closing bogey and created his final winning margin of one.
Branshaw had a chance to force a playoff at the last. He laid his second shot up to 63 yards. Needing to hole the shot to force a playoff, Branshaw could do no better than leaving himself 25 feet for birdie. He also closed with a three-putt bogey to end three back.
Wagner birdied the first, third and fourth. He dropped a shot on the second, but that early run got him to 12-under. He ran off 12 consecutive pars from the fifth to remain there. After a bogey on 17, Wagner closed with a birdie at the last to secure second place.
Kent Jones (71), Bo Van Pelt (70) and Alex Cejka (70) shared eighth place at 9-under-par 279.