ATLANTA (AP) -- Steve Pearce had three hits and three RBIs, Rick Porcello allowed two hits in five innings and the Boston Red Sox beat the Atlanta Braves 5-1 on Tuesday night for their second straight win in a matchup of division leaders.
Porcello (16-7) gave up one run and struck out five, improving to 10-3 on the road this year. He had been 0-2 in his previous three starts overall since an Aug. 14 win at Philadelphia.
Atlanta pitchers walked nine, including five by starter Sean Newcomb (11-8), who matched his season high. He allowed three runs and four hits in 4 1/3 innings.
The Braves' lead over second-place Philadelphia in the NL East was cut to three games.
Kurt Suzuki homered for the Braves.
BREWERS 11, CUBS 1
MILWAUKEE (AP) -- Lorenzo Cain reached base five times, Wade Miley pitched six stingy innings and Milwaukee romped past Chicago to climb within three games of the NL Central leaders.
Miley (3-2) allowed one run and three hits, struck out five and walked none as Milwaukee won for the fifth time in its last six meetings with its division rival. The second-place Brewers maintained a 1 1/2-game lead over St. Louis for the top NL wild card.
Mike Montgomery (4-5) struggled with his control for four innings, and the Brewers had little trouble with a succession of Cubs relievers.
Cain had four walks and a double from the leadoff spot. Christian Yelich walked and added a two-run double in the seventh.
The first-place Cubs committed two errors. First baseman Anthony Rizzo left the game with a bruised right foot.
CARDINALS 11, NATIONALS 8
WASHINGTON (AP) -- Yadier Molina hit a grand slam, Marcell Ozuna homered twice and St. Louis defeated Washington.
Molina provided a cushion for the Cardinals with his sixth career slam, which made it 11-5 in the ninth inning. St. Louis hit five homers overall in stopping a three-game skid.
Right fielder Yairo Munoz robbed Ryan Zimmerman of a three-run homer in the bottom of the ninth, reaching over the fence and pulling the ball back into the field of play for a two-run double.
Tyson Ross (8-9) pitched 1 1/3 innings for the win and Jordan Hicks got the final out for his sixth save.
Ozuna and Paul DeJong homered back-to-back to start the sixth, breaking a 4-all tie. One out later, Patrick Wisdom went deep to make it 7-4.
Making his second major league appearance, reliever Austen Williams (0-1) gave up all three homers. He allowed none in 68 innings this season in Double-A and Triple-A.
The 4-hour, 10-minute game included 16 walks and 20 strikeouts.
ROCKIES 6, GIANTS 2
DENVER (AP) -- Ryan McMahon had a pinch-hit home run and Carlos Gonzalez tripled with the bases loaded during a five-run seventh inning that carried Colorado past San Francisco.
David Dahl also homered and Charlie Blackmon had three hits for the Rockies, who lead the NL West in September or October for the first time since 1995. It was the fourth straight loss for the Giants, who also have dropped six in a row to Colorado.
Rockies starter German Marquez struck out 11 over 6 2/3 innings. Gorkys Hernandez snapped a 1-all tie with a home run in the seventh for the Giants.
Chris Rusin (2-2) got the win. Reyes Moronta (5-2) took the loss.
PHILLIES 9, MARLINS 4
MIAMI (AP) -- Carlos Santana homered to start a four-run first inning and Philadelphia snapped a three-game losing streak by beating Miami.
Jake Arrieta (10-9) struck out a season-high 11 and earned his first win since July 31. He allowed four runs in 7 1/3 innings and improved to 5-1 in eight career starts against the Marlins.
The Phillies moved within three games of first-place Atlanta in the NL East. They have a chance to win a series for the first time in a month Wednesday.
J.T. Realmuto hit two solo homers off Arrieta, increasing his season total to 20.
Asdrubal Cabrera drove in three runs with his 23rd homer and a double for the Phillies. Santana knocked in two runs and scored twice, and Cesar Hernandez hit a bases-loaded triple. The Phillies had totaled five runs in their previous four games.
Marlins starter Trevor Richards (3-8) lasted only 1 1/3 innings in his shortest outing yet. The rookie remained winless since July 14.
PIRATES 7, REDS 3
PITTSBURGH (AP) -- Starling Marte hit a two-run homer, Gregory Polanco had a two-run double and Pittsburgh topped Cincinnati.
Joe Musgrove (6-8) took a shutout into the seventh inning for the Pirates, who improved to 12-4 against the Reds this season.
Scooter Gennett homered twice for Cincinnati. Cody Reed (0-2) permitted six runs and nine hits in a season-high five innings.
The top four batters in Pittsburgh's lineup went a combined 8 for 17 and drove in five runs.
ASTROS 5, TWINS 2
HOUSTON (AP) -- Alex Bregman hit three doubles and Yuli Gurriel homered for the second game in a row, leading Justin Verlander and Houston to its fourth straight win.
Verlander (14-9) yielded one run and three hits while fanning eight over seven innings. Roberto Osuna got his 13th save.
Gurriel's homer capped a four-run first off Trevor May (3-1).
Minnesota designated hitter Miguel Sano was carted off the field in the second after injuring his surgically repaired left leg sliding into second base. He was listed as day-to-day.
TIGERS 8, WHITE SOX 3
CHICAGO (AP) -- A fan was hit in the face by a foul ball and bled profusely before walking to the first aid station, causing a brief delay during Detroit's win.
The middle-aged male fan was sitting in the first row on the first base side of Guaranteed Rate Field -- well beyond where the netting extends to end of the dugout -- when he was struck by Jeimer Candelario's foul leading off the Tigers ninth. The game was held up for a couple minutes while he was treated, and the man eventually walked away under his own power, escorted by stadium personnel.
Francisco Liriano (4-9) had been 0-8 since late April. Lucas Giolito (10-10) gave up four earned runs in 1 1/3 innings.
INDIANS 9, ROYALS 3
CLEVELAND (AP) -- Mike Clevinger struck out 10, Francisco Lindor hit another leadoff homer and Cleveland ended a three-game losing streak.
Clevinger (11-7) allowed just three hits in six innings and remained unbeaten in his last seven starts.
Kansas City had its season-high winning streak stopped at six, and lost starting pitcher Danny Duffy and rookie right fielder Brett Phillips to injuries.
Following the game, Duffy said his season is over. He's been sidelined this year with shoulder issues. Phillips bruised his right shoulder crashed into the wall chasing a flyball.
RANGERS 4, ANGELS 2
ARLINGTON, Texas (AP) -- Adrian Beltre and Elvis Andrus each hit solo home runs in the fourth inning to lead Texas.
Andrus hit the first pitch of the fourth against Andrew Heaney (8-9) to tie it at 1. Two batters later, Beltre went deep for the ninth time this season and 471st time in his career.
Shohei Ohtani hit his 16th homer for Los Angeles, a leadoff shot in the sixth that chased Texas starter Mike Minor (11-7). It was Ohtani's first major league homer off a left-handed pitcher.
Jose Leclerc struck out two in a perfect ninth for his ninth save.
RAYS 4, BLUE JAYS 0
TORONTO (AP) -- Ryne Stanek became the first rookie pitcher in 75 years to start consecutive games and combined with six relievers on a three-hitter as Tampa Bay won its fourth in a row.
A night after throwing one inning and 16 pitches, Stanek worked one inning. He became first rookie to start back-to-back games since the St. Louis Cardinals' Red Munger got one out in a loss to Philadelphia on July 28, 1943, then pitched a complete-game victory over the Phillies the following day, according to the Elias Sports Bureau.
Hunter Wood (1-1) pitched two hitless innings and Sergio Romo got his 19th save. Rookie Ryan Borucki (3-4) took the loss.
DIAMONDBACKS 6, PADRES 0
PHOENIX (AP) -- Robbie Ray struck out 10 and pitched two-hit ball for 6 1/3 innings as Arizona blanked San Diego to end a four-game losing streak.
The Diamondbacks' skid had knocked them out of first place in the NL West.
Ray (5-2) got his first win at Chase Field since March 30, his first game of 2018 -- he'd been 0-1 in his previous six starts at home. He won back-to-back starts for the first time since last September.
Joey Lucchesi (7-8) gave up two runs and three hits in five innings. He's winless in five career starts against Arizona.
Nick Ahmed hit an RBI triple and scored on Ketel Marte's sacrifice fly for a 2-0 lead in the second.