TORONTO (AP) -- Toronto's Aaron Sanchez put in a commanding pitching performance to steer the Blue Jays to a 6-2 win against American League-leading Houston on Friday, ending a run of seven straight losses against the Astros.
The result, combined with Texas' victory over Kansas City, trimmed Houston's lead atop the AL West division to 4-1/2 games, while in the AL East, the New York Yankees maintained their narrow lead by holding off the Los Angeles Angels.
In the meeting of the top two teams in the National League, St. Louis wrung out another narrow victory against the Los Angeles Dodgers.
Toronto's Sanchez (5-4) allowed one run in eight-plus innings, leaving after giving up three straight hits to start the ninth. The homer he gave up in the ninth was the first off a Blue Jays pitcher in 26 innings.
Jose Reyes and Jose Bautista each hit two-run homers for Toronto.
Texas' Chi Chi Gonzalez threw a shutout in only his second major league start as the Rangers beat skidding Kansas City 4-0.
Gonzalez (2-0), the Rangers' 2013 first-round draft pick, has not allowed a run in 14-2/3 innings in his first two starts.
Mitch Moreland hit a homer to kick start a three-run sixth inning for the Rangers, who have won six of seven, while the reigning AL champion Royals have lost eight of 10.
New York's Alex Rodriguez moved past Barry Bonds for second place on the career RBIs list and got four hits as the Yankees clung on for an 8-7 win against the fast-finishing Angels.
Down 8-1 in the ninth inning, the Angels rallied for six runs with the help of a routine popup that dropped between two infielders for a single.
Los Angeles' first eight batters in the inning reached base and the Angels looked like winning when they cut the deficit to 8-6 and had the bases loaded with no outs. However New York pitcher Dellin Betances retired the next three batters, ending it by striking out Carlos Perez with runners at first and third.
St. Louis' Carlos Martinez outpitched Brett Anderson again during their second low-scoring duel in six days and led the Cardinals to a 2-1 win against the Dodgers.
Martinez (6-2) allowed his only run in the second inning on a bases-loaded walk. He had a career-high 11 strikeouts while helping to lower the Cardinals' major league-best ERA to 2.57.
Last Sunday, Martinez held the Dodgers to one hit over seven innings and struck out eight in a 3-1 victory over Anderson.
Washington's Danny Espinosa hit a three-run homer in the second inning to lay the foundation for a 7-5 win against the Chicago Cubs.
The Nationals finished with 12 hits and broke out of a recent offensive slump in which they scored only 15 runs while losing six of their past seven games.
They touched up Chicago starter Tsuyoshi Wada (0-1) for five runs in his 3-2/3 innings. Washington finished with three doubles and a homer off Wada.
Arizona's Jeremy Hellickson pitched six solid innings for his fourth straight win as the Diamondbacks beat the New York Mets 7-2.
Hellickson (4-3) allowed two runs while striking out six.
A.J. Pollock had three hits, two of them doubles. He drove in two runs and scored twice for the Diamondbacks, including the tying run in the six innings before they broke the game open with four runs in the eighth.
Pittsburgh's Neil Walker and Starling Marte homered as the streaking Pirates won 10-8 at Atlanta.
Walker hit a three-run drive, a towering shot deep into the right-field seats in the fifth inning, while Marte's two-run homer gave the Pirates a 6-4 lead in the sixth.
Pittsburgh has won 12 of its past 14 games while the Braves have lost three in a row, during which the bullpen has given up 13 runs to ruin good starts.
Tampa Bay's Logan Forsythe stroked a ninth-inning home run to end a scoreless stalemate and give the Rays a 1-0 win against Seattle.
Struggling Mariners closer Fernando Rodney (2-3) threw an inside fastball to Forsythe, who lifted it over the left-field wall. Rodney has allowed a run in nine of his past 13 appearances.
The Mariners have lost seven straight, all during this homestand, and have been outscored 28-13, leaving 62 runners on base. They are hitting just .159 (10 of 63) with runners in scoring position.
Detroit pitcher Alex Wilson hit Avisail Garcia with a pitch when the bases were loaded in the 11th inning, handing the White Sox a 4-3 win and extending the Tigers' losing skid to eight straight.
San Francisco ended its own losing skid -- five games -- with a 5-4 victory at Philadelphia, with Buster Posey hitting the go-ahead home run in the seventh inning.
Baltimore's Matt Wieters, playing his first game in over a year after elbow surgery, had two hits and two RBIs to help the Orioles defeat Cleveland 5-2.
Milwaukee's Adam Lind hit a three-run homer among his three hits and drove in six runs to lift the Brewers to a 10-5 victory over Minnesota.
San Diego's Will Venable hit the first of his team's three solo homers, taking advantage of Jon Moscot's shaky debut, as the Padres pulled away to a 6-2 victory at Cincinnati in a rain-delayed game.
Boston beat Oakland 4-2 in a game that will be remembered for the debut of Athletics reliever Pat Venditte, who became the first pitcher in 20 years to throw with both arms in the same game, and a woman in the crowd suffering life-threatening injuries after being hit by a broken bat.
Miami's Giancarlo Stanton hit a mammoth home run as the Marlins beat Colorado 6-2 on another rain-soaked night at Coors Field.