Hunter had four singles and Miguel Cabrera hit a three-run home run, his 26th, as the Tigers snapped a three-game losing streak.
Colby Rasmus homered and drove in four runs for the Blue Jays, who failed to extend their seven-game home winning streak.
Omar Infante singled off Neil Wagner (1-3) to begin the eighth, moving to second on Alex Avila's sacrifice bunt and taking third on Austin Jackson's deep fly ball. Hunter followed with a comebacker that bounced off Wagner and rolled to shortstop Jose Reyes, whose throw to first was late.
Al Alburquerque (1-1) worked one inning for the win, just the second for Detroit in eight games, and Joaquin Benoit finished in the ninth for his sixth save in as many chances.
WHITE SOX 5, ORIOLES 2
CHICAGO (AP) — Adam Dunn and Conor Gillaspie homered, John Danks pitched into the eighth inning and Chicago snapped Baltimore's four-game winning streak.
The White Sox ended a five-game skid and avoided falling a season-high 16 games below .500.
Danks (2-5) earned his first win since June 8 against Oakland, pitching seven-plus innings and allowing two runs and six hits while striking out four. Following that win against the Athletics, Danks had been winless in three starts while allowing 13 earned runs.
Addison Reed pitched a scoreless ninth for his 22nd save in 26 attempts.
Jason Hammel (7-5) pitched seven innings and gave up five runs and nine hits for the Orioles.
YANKEES 7, TWINS 3
MINNEAPOLIS (AP) — Robinson Cano homered for the third straight game and Phil Hughes gave up one run on six hits in seven innings, lifting New York over Minnesota.
Cano followed up a two-homer performance Monday by going 2 for 4 with three RBIs and Alberto Gonzalez had two hits and three RBIs as well for the Yankees. New York has broken out for 17 runs in the first two games of the series to snap a five-game skid.
Hughes (4-7) struck out three and walked two, and Mariano Rivera got one out for his 27th save.
Samuel Deduno (4-3) gave up three runs on five hits in six innings for the Twins, who lost for the eighth time in 11 games.
MARINERS 9, RANGERS 2
ARLINGTON, Texas (AP) — Kendrys Morales homered twice and tied a career high with six RBIs to lead Seattle past Texas.
Morales had a solo home run in the first and a three-run shot in the fifth off rookie Justin Grimm. The switch-hitter added a two-run single in the sixth.
Joe Saunders (6-8) won for the first time in eight regular-season starts at Rangers Ballpark. The left-hander allowed two runs — one earned — and struck out five in 6 2-3 innings.
Seattle's Raul Ibanez, who hit 10 homers in June, had a solo shot for his 20th homer of the season. Grimm (7-6) gave up six runs and seven hits in four innings.
RAYS 8, ASTROS 0
HOUSTON (AP) — David Price pitched three-hit ball for seven innings in his return from the disabled list and Desmond Jennings homered and drove in four runs as Tampa Bay beat Houston.
Price (2-4) had missed the last 44 games with a left triceps strain in his first-ever stint on the DL. But he showed no signs of rust, allowing a season-low for hits with 10 strikeouts.
Three relievers combined to finish the four-hitter, a night after the Rays two-hit the Astros.
Jennings, who finished with three hits, had a two-run single in the fourth to make it 3-0 and his two-run homer in the sixth pushed the lead to five runs.
Erik Bedard (3-4) yielded six hits and four runs with a season-high six walks in 5 1-3 innings.
INDIANS 6, ROYALS 5
KANSAS CITY, Mo. (AP) — Carlos Santana and Asdrubal Cabrera each drove in a pair of runs, and Cleveland took advantage of some wild pitching to beat Kansas City.
Mark Reynolds and Jason Giambi also drove in runs for the Indians, who capitalized on eight walks by Royals starter Luis Mendoza and the Royals' bullpen to win their fifth straight game.
Cody Allen (3-0) earned the win in relief for Cleveland, while Chris Perez survived putting two aboard in the ninth for his eighth save of the season.
Royals reliever Tim Collins (2-3) walked the only two batters he faced in the seventh, Aaron Crow walked another to load the bases and Santana came through with a go-ahead sacrifice fly.
ATHLETICS 8, CUBS 7
OAKLAND, Calif. (AP) — Derek Norris hit a three-run homer with two outs in the eighth inning and Oakland rallied to beat Chicago and regain the AL West lead.
Norris sent the 2-2 pitch from James Russell (1-2) over the left-centre field wall for his fourth home run this season. Josh Donaldson and Chris Young also homered to put the A's a half-game ahead of Texas, which lost 9-2 at Seattle.
Alfonso Soriano hit a three-run homer and Welington Castillo drove in three runs for Chicago.
Dan Otero (1-0) pitched one scoreless inning for his first career win, and Grant Balfour finished for his 20th straight save this season and 38th overall.
ANGELS 5, CARDINALS 1
ANAHEIM, Calif. (AP) — Jered Weaver earned his second win of an injury-plagued season with help from a five-run second inning, and Los Angeles beat St. Louis to extend its win streak to seven.
Three-time NL MVP Albert Pujols played his first game against his former club and was 0 for 3 with two strikeouts and a walk as the designated hitter, while Mark Trumbo started at first base.
Weaver (2-4) allowed a run, six hits and no walks over seven innings. He struck out five in his ninth start of the year, working with runners on base in every inning but the seventh.
Lance Lynn (10-3) gave up five runs and nine hits in six innings, striking out eight. The 26-year-old right-hander has dropped back-to-back outings for the first time in 1 1/2 big league seasons.
RED SOX 4, PADRES 1
BOSTON (AP) — Brandon Snyder hit a bases-loaded double and John Lackey struck out six over eight strong innings for Boston in a win over slumping San Diego.
Lackey (6-5) scattered six hits and walked one while moving above .500 for the first time since late in 2011. The only run Lackey allowed was a solo homer by Jesus Guzman in the seventh.
Koji Uehara replaced Lackey in the ninth and struck out two, earning his fifth save for the Red Sox, who improved to 6-1 during a nine-game homestand.
San Diego rookie Robbie Erlin (1-1) threw 93 pitches over 3 2-3 innings before getting pulled after Snyder's bases-clearing double in the third put Boston up 3-0.