Updated

Curtis Granderson and Robinson Cano homered during New York's five-run third inning, Rafael Soriano retired Mark Trumbo on a broken-bat flyout to end it, and the Yankees snapped the Los Angeles Angels' eight-game winning streak with a 6-5 victory Wednesday night.

Raul Ibanez tripled off the center field wall and scored the tiebreaking run on Nick Swisher's sixth-inning flyout for the Yankees, who recovered from blowing a four-run lead to avoid a series sweep.

Soriano yielded a walk and Albert Pujols' infield hit in the ninth inning before breaking the bat of Trumbo, whose homer to left ended Monday's victory for the Angels.

Trumbo homered in his career-best fourth straight game and drove in three runs for the Angels, who fell short of their first nine-game winning streak in nearly eight years. Rookie Mike Trout had a two-run double as the Angels rallied to tie it in a four-run fourth inning.

Hisanori Takahashi (0-2) gave up Ibanez's triple after Ervin Santana yielded six hits and five runs over five innings for the Angels, who hadn't lost since May 21.

Ivan Nova (6-2) allowed eight hits and three walks while battling into the seventh inning for the Yankees, winning for the second time on the road trip.

Reliever Cory Wade escaped a seventh-inning jam, and Soriano got into trouble before earning his sixth save.

Granderson hit a three-run homer and Cano added a two-run shot in a span of five batters for the Yankees, who haven't been swept since their season-opening series against Tampa Bay. New York managed just one baserunner the rest of the night, but it was Ibanez.

Trout also scored on Trumbo's bases-loaded flyout in the first inning for the Angels, whose eight-game streak was their longest since July 2009. Los Angeles (26-26) fell one game short of matching the club record for wins in May (19) and fell back to .500 after getting above the mark for the only time since winning on opening day.

After Russell Martin drew a leadoff walk and Derek Jeter singled in the third, Granderson put his 16th homer of the season — the fifth of his career against Santana — deep into the elevated stands above right field. After Alex Rodriguez walked, Cano sent his eighth homer deep into the same stands.

Santana, who threw 48 pitches in the third inning alone, has been the weakest link in the Angels' rotation this season, allowing 15 homers in 11 starts. He lost his first six starts while receiving minimal run support, but is on a five-game unbeaten run.

After Trumbo's two-run shot to right in the fourth, Los Angeles then evened it when Erick Aybar and Bobby Wilson scored on a long double by Trout, the 20-year-old speedster.

Santana retired nine straight after the Yankees' scoring burst, but left after throwing 103 pitches through five innings. Ibanez's drive off the wall eluded center fielder Peter Bourjos, and he scored on Swisher's medium-length fly to left.

Kendrys Morales and Trumbo singled with two outs in the seventh, but Wade struck out Howie Kendrick in a nine-pitch at-bat. Kendrick made three inning-ending outs with two runners on base, including a double-play grounder in the fifth.

NOTES: Both teams have a day off Thursday. Los Angeles will host AL West rival Texas in a three-game weekend series, while New York wraps up its nine-game trip with a weekend set in Detroit. ... Trumbo is the first Angels hitter to homer in four straight games since Rex Hudler did it May 19-22, 1996. The club record is five straight games with a homer by Bobby Bonds in 1977. ... Angels RHP Garrett Richards pitched the ninth in his season debut. The touted prospect was recalled from the minors to take the rotation spot of injured ace Jered Weaver, but he likely won't get a start until next week. Dan Haren is expected to take Weaver's scheduled start Sunday against Texas.