Carl Crawford hit a grand slam as the Boston Red Sox scored eight runs in the fourth inning and snapped a two-game skid with a 12-7 victory over the Texas Rangers Saturday. Jarrod Saltalamacchia had a two-run homer during Boston's big inning, which featured eight hits as the Red Sox sent 13 batters to the plate and bounced back from a 10-0 loss to the Rangers the night before. Erik Bedard (5-9) earned his first win since joining Boston in a trade with Seattle. The Red Sox averaged just 3.3 runs in his first three starts, but gave him plenty of support this time. By the time the fourth inning was over, Boston had a 9-3 cushion. Bedard went six innings, allowing three runs and five hits. He walked four and struck out six. Yankees 6, Blue Jays 4: Robinson Cano gave the Yankees the lead for the second straight game against Toronto, this time hitting a two-run double in the seventh inning to exceed 100 RBIs, and New York rallied to beat the Blue Jays. Cano lined a 2-2 pitch from reliever Casey Janssen to the wall in center field to score Curtis Granderson and Alex Rodriguez, back in the lineup after missing a week with a sprained left thumb. Ricky Romero (13-10) was cruising along after giving up a two-run homer to Francisco Cervelli and an RBI single to Eduardo Nunez in the third until he hit Granderson in the back with a curveball with one out in the seventh and walked Rodriguez. Athletics 3, Mariners 0: Brandon McCarthy nearly got caught up in the moment when he received a standing ovation as he trotted out to the mound to work the ninth inning. This was one fun game for the right-hander. McCarthy pitched a three-hitter for his first shutout in more than two years, leading the Oakland Athletics to a victory over the Seattle Mariners. Tigers 9, White Sox 8: Miguel Cabrera hit a game-ending solo homer in the ninth inning, capping a stirring Detroit rally and lifting the Tigers to a win over the Chicago White Sox. Detroit leads third-place Chicago by 7 ½ games in the AL Central. Rays 6, Orioles 3: B.J. Upton had five RBIs, Wade Davis pitched effectively into the seventh inning and the Tampa Bay Rays beat the Baltimore Orioles. Royals 5, Indians 1: Luke Hochevar pitched eight innings of three-hit ball and the Kansas City Royals handed the Cleveland Indians a costly loss Saturday night. In another game the Los Angeles Angels beat Minnesota 10-6.