TORONTO — Carlos Villanueva won his fourth straight start, Travis Snider hit a two-run home run and the Toronto Blue Jays beat the Detroit Tigers 8-3 on Friday night.
Jeff Mathis drove in three runs with a bases-loaded double and Omar Vizquel had two hits as Toronto won for the fifth time in seven games.
Miguel Cabrera and Prince Fielder hit back-to-back homers for Detroit in the first inning but the Tigers lost for the third time in four games.
Cabrera's homer was his 25th, and raised his major league-leading RBI total to 83. For Fielder, the homer was his 16th.
Detroit has won nine of 14 since the All-Star break but is just 3-4 away from home in that time.
Rick Porcello (7-6) failed to extend his road winning streak to four games, allowing five runs and six hits in six innings. Porcello, who won a career-best four straight road games as a rookie in 2009, walked two and struck out one in his first road defeat since June 8 at Cincinnati.
Villanueva (6-0) saw both Cabrera and Fielder go deep over a three-pitch span in the first inning, but didn't give up another run. Unbeaten in five starts since joining Toronto's rotation after 22 relief appearances, the right-hander allowed four hits in five innings, walked two and struck out three.
Aaron Loup worked 1 1-3 innings, Brandon Lyon got two outs, Darren Oliver gave up Fielder's RBI single in the eighth and Casey Janssen finished.
Toronto cut Detroit's early lead in half with a run in the bottom of the first. Omar Vizquel doubled, his first extra-base hit of the season, and scored on Edwin Encarnacion's two-out single.
The Blue Jays took the lead with a four-run fourth, loading the bases with a single and two walks before Mathis hit a two-out double just beyond the reach of Quintin Berry in left, clearing the bases. Anthony Gose followed with a bad-hop single that eluded Fielder, giving the rookie outfielder his first career RBI.
After Yan Gomes reached on a throwing error by second baseman Omar Infante in the eighth, Snider followed with a blast to right-center, his third in five games.
NOTES: The speedy Gose followed his first RBI with his first career stolen base. ... Blue Jays SS Yunel Escobar and DH Adam Lind were scratched with back soreness. Vizquel made his third straight start in Escobar's place, while Encarnacion moved to DH and Gomes took over at 1B. ... Toronto RHP Drew Hutchison (elbow) played catch Friday for the first time since injuring his arm six weeks ago, making about 30 throws from 45 feet. ... Blue Jays RHP Brandon Morrow (left oblique) threw a bullpen session Friday and remains on track to make his first minor league rehab start Sunday, a two-inning stint at Class-A Dunedin. ... Detroit's last visit to Toronto was in May, 2011, a series that saw Justin Verlander throw his second career no-hitter.