Clay Buchholz tossed seven scoreless innings and support came in the form of two home runs from Mike Napoli and further shots from Stephen Drew and Daniel Nava.
The win keeps Boston two games clear of the New York Yankees, who edged out the Houston Astros 5-4.
Houston scored four runs in the fourth inning to tie the game at 4-4, but Eduardo Nunez scored the go ahead run in the sixth before Mariano Rivera locked down his 11th save of the season.
Baltimore lost ground in the division battle as they lost 8-3 to the Seattle Mariners, falling behind early on as Aaron Harang held them to two runs in six innings.
There was also defeat for the other AL East team as the Tampa Bay Rays were edged out 9-8 by the Kansas City Royals.
Home runs from Matt Joyce, Ben Zobrist and Luke Scott had given Tampa Bay a 6-2 lead, but the Royals rallied as Lorenzo Cain and Jeff Francoeur collected two RBI apiece.
That moved the Royals to the top of the AL Central, overtaking Detroit who lost 6-2 to the third-placed Minnesota Twins.
Minnesota kept their noses in front of the Cleveland Indians, who shut out Philadelphia in a 6-0 victory.
The Chicago White Sox knocked off Texas 5-2 but the Rangers remain two games clear in the AL West after the Oakland Athletics were edged out 5-4 by the Los Angeles Angels, who got home runs from Howie Kendrick, Mike Trout and Mark Trumbo.
Lance Lynn recorded his fifth win of the season as the St Louis Cardinals topped the Cincinnati Reds 4-2 to stay top of the National League Central, just a half-game ahead of the Pittsburgh Pirates who beat the Milwaukee Brewers 6-4 on the back of a four-run eighth inning.
Scott Feldman tossed a complete game, giving up two runs as the Chicago Cubs beat the San Diego Padres 6-2 at Wrigley Field.
Anthony Rizzo had a hit, a run and a stolen base against Andrew Cashner - the pitcher Chicago traded to San Diego to land the first baseman - as the Cubs chased the Padres starter from the game after four innings.
Coming off his first career shutout, Jordan Zimmerman tossed eight scoreless innings to help the Washington Nationals to a 2-0 win over the NL East-leading Atlanta Braves, closing the gap to 3.5 games.
Jordany Valdespin had a pinch-hit three-run homer to lift the New York Mets to a 7-6 victory over the Miami Marlins.
Arizona's bullpen let them down once again as the San Francisco Giants rallied to win 9-6 at Chase Field.
David Hernandez was touched up for three runs in the eighth inning as the Giants took a 7-6 lead, and Heath Bell then gave up two more in the top of the ninth as victory got away from the Diamondbacks.
Arizona's collapse allowed the Giants to leapfrog them into second place in the NL West, one game behind the Colorado Rockies who beat the Los Angeles Dodgers 7-3 after jumping Josh Beckett early on.