"He's come a long way in that regard, minimizing damage," Rockies manager Walt Weiss said. "The big one was the sixth inning -- really wanted him to get through that sixth instead of having to go to the 'pen."
The Rockies offense humming behind him, Nicasio (8-6) allowed just one extra-base hit and struck out nine -- one short of his career high.
Well before he ran into trouble in the sixth, however, Nicasio escaped a two-out, bases-loaded jam in the first inning. That was what gave him the initial boost of confidence, which carried over into the later innings.
"Big trouble in the first inning and no problem, 'OK, I can go now,'" Nicasio said.
It was the Rockies' third win in four games, this one coming after they took their first road series in more than six weeks in a 4-3 win over the Marlins on Sunday. Monday's win also opened Colorado's nine-game homestand, its second to last of the year.
Todd Helton got the offense rolling in the second when he launched a Barry Zito curveball into the Rockies bullpen with Nolan Arenado on base for an early 2-0 Colorado lead.
Center fielder Charlie Blackmon -- filling in for Dexter Fowler, who left after he bruised his left knee attempting to steal second -- led off the next inning with a homer that crept over the right-field wall.
"We got to Zito early, which was nice," said Arenado, who finished 3-for-4 and scored two runs. "We got people on base and we were letting it go. ... We were taking our hacks, and today they were falling."
While the two early homers accounted for half the runs, every hit seemed to find a gap in the infield or a space of open grass in the outfield.
The Rockies added two more runs in the fourth when the first three batters all reached base, Nicasio lending a helping hand away from the mound by dropping a single just in front of center fielder Gregor Blanco to score Arenado. Second baseman Marco Scutaro then bobbled a potential double-play ball on a Blackmon groundout, the forceout at second enough to score Helton and make it 5-0.
Zito's (4-10) night ended after that fourth inning, allowing all five runs on nine hits and striking out just one. Despite his strong career numbers against Colorado, Zito's ERA over his last four starts against the club ballooned to 7.71.
San Francisco's first major scoring opportunity came in the first, when Scutaro doubled before Posey and Hunter Pence reached on a walk and single, respectively, to load the bases with two outs. But Nicasio got Pablo Sandoval to swing and miss on a fastball and escaped his first jam.
Aside from a diet of fastballs, Nicasio mixed in sliders and changeups, those two pitches showcasing his improvement and critical to closing out a strong performance.
"I think early [this season] a lot of those sliders were a ball out of his hand, so they didn't really serve a purpose," Weiss said. "But now when he gets it closer to the plate, it's a very effective pitch, especially on righties."
In the sixth, Sandoval nearly brought Nicasio's strong outing to an abrupt end, a flyout to deep center dying just a few feet short of a three-run homer. After that, his day ended in fitting fashion -- with a swinging strikeout.
"He was sharp today," said Pence, who stayed in the game after a scary first-inning collision with the right-field wall. "His fastball, he was locating it well and it was just deceptive. It felt like it was getting on you really quick."
Corey Dickerson crossed home for Colorado's final run in the seventh when Giants reliever Jose Mijares sent a throw wide of the first baseman and allowed DJ LeMahieu to reach safely.
Reliever Wilton Lopez allowed one hit in two scoreless innings before Jeff Francis gave the Giants their first run in the ninth. Francisco Peguero roped a two-out single to left before pinch-hitter Joaquin Arias scored him with a double into the left-center gap.