"We play excellent on the road and I'm proud of our guys for coming into this environment and continuing to play good," manager AJ Hinch said.

Houston won the first two legs of the three-game rematch of last year's AL Division Series. The defending World Series champion Astros go for a sweep Sunday night at Fenway, where the major league-leading Red Sox had won their last 10 series at home. Boston has only been swept once this season, in a three-game set against Tampa Bay in late August.

"I think it's great that we got off to a good start here, but when the clock strikes midnight tonight it don't matter," Bregman said. "I think this team is worried about the next pitch and that's one of the reasons why we're good."

Martin Maldonado also homered for Houston and Morton (14-3) delivered a few hours after being activated from the DL.

Morton, who missed his last start with discomfort in his right shoulder, allowed two runs and seven hits, striking out three and walking two. He allowed a run and three hits in the first inning, but Boston didn't score again until Xander Bogaerts' solo homer in the fifth.

Roberto Osuna took over in the ninth and got his 15th save despite allowing a run. Osuna got out of a jam when J.D. Martinez grounded into a double play.

The Red Sox were 3 for 13 with runners in scoring position after going 1 for 9 in the opener.

"It felt like we had traffic in both games and we haven't been able to cash in," manager Alex Cora said. "They made some pitches too -- you've got to give them credit."

Eduardo Rodriguez (12-4) pitched 3 1/3 innings. Houston tagged him for five runs and six hits, including solo homers by Bregman and Maldonado.

Tyler White hit an RBI triple and scored on Jake Marisnick's sacrifice fly in the third, when a pair of runs put Houston up for good.

Bregman made it 3-1 in the fourth with his towering shot that bounced off a sign above the Green Monster, and Maldonado led off the fourth with his ninth of the season.

Bogaerts, who went 3 for 4 with two RBI, gave Boston a 1-0 lead in the first on a single after back-to-back singles by Mookie Betts and Andrew Benintendi.

Rodriguez was pulled after walking Springer with one out in the fourth. Maldonado led off the inning with a homer to left-center, the second in two innings off Rodriguez.

ALEX THE GREAT

The 24-year-old Bregman became the first Astros player to hit 30 homers in a season before age 25. He has reached base in 35 consecutive games and leads the majors with 79 extra-base hits.

"He's at the top of his game as of right now but he's going to get better," Hinch said. "He loves baseball. I've never seen anybody that loves baseball more than him. He's kind of what a baseball player is supposed to be like."

LAST CHANCE

The Red Sox were a swing away from walking off with a win. After getting one run against Osuna in the ninth, Martinez -- who has 39 homers and 117 RBI -- was up with runners at first and third with one out.

Martinez hit a grounder to short that started a routine double play, ending hopes of a comeback.

"That's one of the good things when you play here and give yourself a chance, good things can happen," Bogaerts said. "We had obviously one of our best players at the plate right there and he didn't come through, but nine out of 10 times he will."

TRAINER'S ROOM

Astros: RHP Lance McCullers Jr. (strained right forearm) threw 30 pitches during a bullpen sessions. McCullers, who's been out since leaving a start early on Aug. 4 against the Los Angeles Dodgers, said he's getting closer to returning. "I still have a couple more boxes to check before we start getting into games, but this was a big step for me," he said.

Red Sox: RHP Matt Barnes is out indefinitely with inflammation in his left hip. Barnes, who last pitched Monday against Atlanta, said he didn't want to risk aggravating his hip during the stretch run.

UP NEXT

Astros: LHP Dallas Keuchel (11-10, 3.46) has won his last three starts.

Red Sox: RHP Rick Porcello (16-7, 4.20) held the Astros to two earned runs in 6 1/3 innings while getting the win on June 3 at Houston.

---

More AP MLB: https://apnews.com/tag/MLB and https://twitter.com/AP-Sports