The Giants built a 2-1 lead on eight hits against Jurrjens in seven innings before adding seven hits and three runs in two innings against three Braves relievers.
Cain allowed only one run in seven innings to continue his recent string of strong starts. Cain (8-9) has a 1.81 ERA in his last seven starts, but he's only 3-2 in that span.
"I tried to hit both sides of the plate," said Cain, who gave up six hits and a walk, and struck out five.
Cain has won two straight decisions for the first time this season.
"Cain's always tough," said Mark Kotsay, who was 2-for-4 one night after hitting for the cycle. "He's effective. He's got a [3.57] ERA for a reason. You've got to put some hits together to beat him, and unfortunately he held us at bay."
Brian Wilson pitched the ninth for his 33rd save.
Atlanta has lost four straight at Turner Field in the five-game skid. The Braves are 5-15 at home in July and August.
Winn has three four-hit games this season, including two against Atlanta.
"People are not catching them," Winn said of his hits. "I'm finding holes. I'm not doing anything different."
Bengie Molina also had four hits and drove in two runs. The Giants had 15 hits, one shy of their season high, and rebounded from four straight losses at Houston.
"It was nice coming in and stopping something that wasn't going well for us," Cain said.
Molina's single to right drove in Fred Lewis to give the Giants a 1-0 lead off Jurrjens in the first.
Dave Roberts reached on an infield single in the third and stole second. Roberts moved to third on a wild pitch and scored on Winn's fly ball to right for a 2-0 lead.
The Braves scored their only run off Cain in the sixth. Kotsay led off with a double to right for his second hit. Kotsay moved to third on a wild pitch and scored on Chipper Jones' single to left.
Jurrjens (11-8) lasted at least six innings for the 12th straight start and set a career high with nine strikeouts. The rookie right-hander gave up eight hits and two runs with no walks in seven innings.
"He's got everything to be proud of," Braves manager Bobby Cox said of Jurrjens, who has a 3.15 ERA. "He can't do the hitting."
Jurrjens said he was motivated by the matchup with Cain.
"It's fun pitching against a pitcher like that," Jurrjens said. "It keeps you on your game. I didn't win this time but I think I did all I can to help the team win."
The Giants quickly added to a 2-1 lead as soon as Jurrjens left the game. Winn led off the eighth with his homer to left off Will Ohman.
"It was good, but it wasn't something I really focused on," said Winn of the milestone homer. "When I retire, I may look back on it."
Lewis added a single to knock Ohman out of the game and moved to third on Molina's single to left off Jeff Bennett.
Travis Ishikawa drove in Lewis with another single to left for a 4-1 lead. The ball skipped past Gregor Blanco for an error. Bennett issued an intentional walk to Eugenio Velez to load the bases with no outs, but the Giants could not score another run.
The Giants added a ninth-inning run off Julian Tavarez. Molina's fourth hit, a single, drove in Winn, who led off with a double.
"They're all overworked in the bullpen," Cox said of his relievers. "It's as simple as that."
Roberts was thrown out at the plate in the fifth while trying to score from first on Winn's double down the left-field line. Jones took Blanco's throw from left and threw Roberts out at the plate on a close play.
The Braves signed 10th-round draft pick J.J. Hoover to a minor league contract with a $400,000 signing bonus. ... Giants manager Bruce Bochy said OF Aaron Rowand, who left Thursday's game in Houston with tightness in his lower back, should play on Saturday. ... LHP Tom Glavine returned to the disabled list with a sore left elbow one day after he gave up seven runs in four innings against the Cubs in his first start since June 10. The Braves purchased the contract of RHP Matt DeSalvo from Triple-A Richmond and transferred RHP Tim Hudson to the 60-day DL.