"I usually try to not get too caught up in stuff like that, because I know how baseball is," said Hawkins (1-4). "But this one..."
The Pirates cut the difference to 9-8 in the fifth and trailed, 10-8, when Hawkins initiated a strong late-relief effort.
Jorge Julio froze Freddy Sanchez with a slider to end the seventh with two on, and Manny Corpas struck out one during a perfect ninth for his second save while subbing for injured All-Star closer Brian Fuentes (strained left lat).
Answers would have been difficult for manager Clint Hurdle had the Rockies lost.
"But we didn't," Hurdle said. "We won a ballgame. We did what we had to do when we needed to do it."
The Rockies benefited from three RBIs from Matt Holliday and two RBIs apiece from Troy Tulowitzki and Yorvit Torrealba, and three runs and two stolen bases from leadoff man Willy Taveras in his return after missing three games with a thigh injury.
The Rockies took advantage of Pirates rookie starter John Van Benschoten (0-4), who hit two batters, walked two and gave up nine runs on six hits in two-plus innings.
But the Rockies' lead nearly melted because of the ineffectiveness of right-hander Taylor Buchholz, making his first start since June 1 because of Jason Hirsh's sprained right ankle.
Buchholz yielded six runs (four earned) on nine hits and lasted four innings, one short of the minimum requirement for a win. He struck out five, but the Pirates didn't miss many other pitches.
"That's my problem when things aren't going well -- missing kind of mid-thigh-high and down the middle, pretty much," Buchholz said.
Buchholz also took the blame for the two unearned runs in the fourth. Buchholz threw into the basepath after fielding Nate McLouth's grounder, and first baseman Todd Helton, trying to avoid a collision, couldn't catch it and was charged with the first of his two errors.
Hurdle and Buchholz each said Helton didn't deserve an error. Hurdle said Helton also should not have received an error on a hard-hit, short-hop ball in the seventh.
Buchholz's poor outing could force the Rockies to call up a reliever, since Buchholz won't be available for a few days and his short outing forced the Rockies to use five relievers.
Matt Herges gave up two runs in the fifth. Tom Martin walked one and gave up a hit in the sixth before Hawkins came to the rescue.
Julio said he spent the early innings counseling Corpas not to relax even though the Rockies led big, then did his part to keep the season from possibly slipping away.
"I want to go to the playoffs, and this team's got a lot of chance to go to the playoffs," Julio said. "We scored nine runs in three innings ... That's hard to watch. Let's go."