TORONTO -- Rick Porcello became the first major league pitcher to reach 20 wins this season on Friday night.
"In any series you play, the first game is pivotal," Red Sox manager John Farrell said. "We were able to do it tonight. We're all sitting here with 22 games to play. Every team is the team to beat right now."
The Red Sox (79-61) extended their lead in the American League East to two games over the Blue Jays (77-63), who played sloppy defense that included two errors in losing their fourth game in a row.
"Overall we didn't play a very good game, that's pretty obvious," Blue Jays manager John Gibbons said. "It was a blah, not a very well-played game. It was uncharacteristic and we'll just put it behind us."
Porcello (20-3) allowed six hits and one walk in winning his sixth straight decision.
"It's definitely a huge honor," Porcello said. "It's hard to win one game in the big leagues, let alone 20, so I'm definitely very proud. At the same time it's collective. The way we swing the bats and play defense, it's a complete team effort, so it's thanks to 25 guys -- or 40 now."
Dustin Pedroia had three hits and four RBIs for the Red Sox, who have won three in a row.
Toronto starter Marco Estrada (8-8) allowed six hits, three walks and four runs (three earned) in 2 1/3 innings. He struck out two.
"I just wasn't locating pitches, just one of those days I guess," Estrada said. "I didn't feel very good during my bullpen getting and I guess I took it out there. Even on some close pitches I'd give up a bloop hit, or whatever.
Boston led 4-0 before Toronto cut the lead in half with a two-run third.
The Red Sox added a run in the fourth and scored six in the seventh.
Reliever Scott Feldman allowed four runs (three earned) in the seventh on a solo homer by Bogaerts, his 18th of the season, and a three-run shot by Ramirez, his 22nd.
Ryan Tepera allowed the final two runs of the inning on three hits including Pedroia's two-run single.
The Blue Jays scored an unearned run in the eighth against Brad Ziegler and the Red Sox scored twice in the ninth against Matt Dermody.
Koji Uehara pitched around a single in the bottom of the ninth for Boston.
The Red Sox scored once in each of the first two innings and took advantage of poor outfield defense in the third to tack on two more runs.
Pedroia led off the first with a single and scored on a two-out double by Mookie Betts. Pedroia has reached base in 34 straight games against Toronto.
The Red Sox took a 2-0 lead in the second on a leadoff walk to Jackie Bradley Jr., a wild pitch and a single by Pedroia, who was thrown out trying to advance to third after the throw home eluded catcher Dioner Navarro.
Betts led off the third with a single that glanced off the glove of left fielder Melvin Upton Jr.
Brock Holt led off the fourth with a double against Danny Barnes, took third on a passed ball and came home on Pedroia's sacrifice fly.
Porcello has pitched at least seven innings while allowing three or fewer earned runs in nine consecutive starts.
"He's on quite a run here with consecutive starts working that deep into the ball game," Farrell said. "Just a model of consistency. He keeps rolling along and we play with a lot of confidence."
NOTES: Blue Jays C Russell Martin (left knee) did not start because of a sore knee. C Dioner Navarro started behind the plate. He has had success catching RHP Marco Estrada so the move was expected. ... Toronto LHP Francisco Liriano might start Monday against the Tampa Bay Rays instead of RHP R.A. Dickey, but manager John Gibbons said it was not definite. Liriano has been in the bullpen. ... The Red Sox recalled LHP Henry Owens from Triple-A Pawtucket on Friday. ... Boston DH David Ortiz, who is retiring at the end of the season, was honored before the game Friday. ... Boston LHP Eduardo Rodriguez (2-6, 4.83 ERA) faces Toronto LHP J.A. Happ (17-4, 3.34 ERA) in the second game of the series Saturday.