Barry Zito battled as long as he could, though he had already buried the San Francisco Giants with a brutal first inning.

R.A. Dickey snapped a four-start winless streak, Melky Cabrera had four hits against his former team and the Toronto Blue Jays beat the Giants 10-6 on Tuesday night.

Zito (3-2), who has won just once in six starts, allowed eight runs, five earned, and a season-high 12 hits in 5 2-3 innings. The bulk of the damage came in a six-run, six-hit, 11-batter first that put the Giants in a huge hole.

"In the first inning, I have to be able to pick up the guys," Zito said. "Some of them just came out aggressive and hit them where they wanted to. A lot of balls through the infield today."

Zito, who walked two and struck out two, fell to 1-4 with a 5.40 ERA in six career starts at Rogers Centre.

Still, Zito earned praise from manager Bruce Bochy for giving the bullpen a break by sticking around till the sixth.

"He did a great job of putting that (first) inning behind him and pitching well," Bochy said. "He didn't cave in, he kept going."

Brandon Belt hit a solo homer and Pablo Sandoval added a three-run shot off Brad Lincoln in the ninth but it wasn't enough for the NL West-leading Giants, who came in having won three straight and 10 of 13.

Cabrera matched a career-high by going 4 for 5 with two RBIs. He reached on an error and hit an RBI single in Toronto's six-run first, singled again in the fourth and sixth and doubled home a run in the seventh.

"He's been on a nice little roll lately," Blue Jays manager John Gibbons said. "He can hit, he's always been a good hitter. Early on he struggled, just like everybody else. Now he's starting to feel it a little bit."

Cabrera's big night came with bats he used while playing for the Giants last year, black bats stamped with an orange 53, his jersey number.

"I left some bats last season and Murph (Mike Murphy, the Giants equipment manager) sent them to me and I was using them today," Cabrera said through a translator.

Before the game, Bochy presented Cabrera with his 2012 World Series ring in a private ceremony in the weight room.

"It was brief," Bochy said. "He was thankful and excited that he got the ring. I thanked him for his contributions, it was pretty simple. I think he was looking forward to getting it and he seemed really excited to get his ring."

The MVP of last year's All-Star game, Cabrera was suspended 50 games Aug. 15 for a positive testosterone test, and was later left off San Francisco's postseason roster. He signed a two-year $16-million deal with Toronto in November.

"It's unfortunate what happened, we all make mistakes," Bochy said. "He was a good guy to have on the club, he did all that we asked."

Edwin Encarnacion drove in two runs and scored twice as the Blue Jays had a season-high 18 hits and won three straight games for just the second time this season.

Dickey (3-5) struck out a season-high 10 in six innings, allowing two runs and six hits, to win for the first time since April 18 against the Chicago White Sox.

"Great job," Gibbons said. "The knuckleball was alive."

Brett Cecil worked the seventh and Lincoln pitched the final two innings.

The Blue Jays jumped on Zito early, taking advantage of two Giants errors in the first. Cabrera reached on a throwing error by Sandoval and Jose Bautista walked before Encarnacion hit an RBI single, advancing to second when Hunter Pence threw home.

Mark DeRosa followed with a liner to center, driving in Bautista, and Encarnacion scored when outfielder Angel Pagan bobbled the ball.

"We made a lot of mistakes today," Bochy said.

Colby Rasmus, Emilio Bonifacio and Cabrera added RBI singles, giving the Blue Jays their biggest inning of the season.

The Giants got one back in the second on a two-out RBI single by Nick Noonan after back-to-back walks by Dickey.

Belt's fifth homer, a solo shot off the facing of the second deck in right in the fourth, cut it to 6-2, but the Blue Jays chased Zito and scored three more runs with a two-out rally in the sixth.

George Kontos came on after singles by Cabrera and Bautista, then gave up an RBI double to Encarnacion, an RBI single to pinch-hitter Adam Lind and an RBI double to Brett Lawrie.

Belt had an RBI double off Lincoln in the eighth, and Sandoval made it 10-6 with his seventh homer in the ninth.

Former Blue Jays infielder Marco Scutaro, who started at DH, extended his hitting streak to 13 games with a single in the third. He finished 3 for 5.

NOTES: Cabrera will have an MRI Wednesday because of persistent pain in his legs, particularly his left hamstring. Cabrera has played in every game this season. ... Bochy said C Buster Posey will start at DH Wednesday.