Alexei Ramirez got the ball rolling as he doubled two runs before Gordon Beckham tied the game with an RBI single.
Adam Eaton singled to load the bases and Melky Cabrera singled to left for the winner. It was a day to forget for Cleveland closer Cody Allen as seven straight hitters reached base against his pitching.
Rookie Kris Bryant drove in three runs as the Cubs made it a Chicago double, beating the Pittsburgh Pirates 5-2.
The Detroit Tigers’ best start to a MLB season since 1984 continued as their 2-1 win over the New York Yankees saw them move to 11-2.
Alfredo Simon and CC Sabathia put on a pitcher’s duel for the majority of the game, with Mark Teixeira’s solo home run the only run off Simon, but back-to-back RBI singles from JD Martinez and Yoenis Cespedes won the game for Detroit.
The Boston Red Sox went a game clear of the Baltimore Orioles at the top of the American League East after a crushing 7-1 triumph.
The Red Sox put five runs on the board in the opening three innings in a dominant display at Fenway Park.
The Oakland Athletics moved to .500 and to the top of the West after they beat the Los Angeles Angels 6-3.
Stephen Vogt hit a three-run homer while Marcus Semien added a solo shot at Angels Stadium to seal their seventh win of the season.
The San Diego Padres picked up their ninth win of the season as they crushed the Colorado Rockies 14-3.
Jorge De la Rosa conceded nine runs in his opening two innings in a game which he will want to forget.
Third baseman Luis Valbuena smashed two home runs as the Houston Astros picked up their third successive win, beating the Seattle Mariners 7-5.
The Kansas City Royals were 7-1 winners over the Minnesota Twins, thanks in part to seven strong innings from pitcher Edinson Volquez, while the Cincinnati Reds were 6-1 winners over the Milwaukee Brewers.