Cook, bothered by a stomach ache, had a 16-under 197 total on the Oak Hills Country Club course and earned $247,500 for his second victory on the Champions Tour.
"It was a battle," Cook said. "I didn't feel good right from the get-go. I hit enough quality shots. Sometimes you have to dig a little deeper when you don't have your best stuff or don't feel very good."
A playoff loser to Bruce Vaughan in the Senior British Open in July, Cook started the day a stroke behind second-round leader Jeff Sluman. After bogeying the first hole, Cook birdied three of the next four, and took the lead for good with a 25-foot birdie putt on the 10th hole.
Haas has a 12-point lead over Fred Funk in the Charles Schwab Cup standings going into the season finale next week in Sonoma, Calif.
Haas, who won at Oak Hills three years ago and twice more when the PGA TOUR's Texas Open was played at the course, tied Cook with a 9-foot eagle putt at the par-5 10th after reaching the green in two from 217 yards.
"I knew (Cook) had some birdie holes coming up," Haas said, "so I didn't really feel like I was in the lead. I needed to keep going."
Instead, Haas bogeyed the 196-yard 13th when he pulled a 4-iron into the water.
"I needed to be aggressive, but I hit a poor shot," Haas said. "At that stage I felt like every hole had to be a birdie hole. Every time you looked up (Cook) was one more under par."
Cook saved pars on Nos. 11-13 after missing the greens.
"I knew guys were making runs," Cook said. "After 13 when I got up and down from a tough spot, that's when I knew that I was digging pretty hard."
Cook, an 11-time winner on the PGA TOUR, had a two-putt birdie from 30 feet on the 512-yard 15th and hit a gap wedge to 8 feet set to up a birdie on the 17th.
It was the second straight week a player successfully defended a title. Bernhard Langer repeated at the Administaff Small Business Classic last week near Houston.
Copyright 2008 Associated Press. All rights reserved.