Justin Masterson pitched seven shutout innings and the Cleveland offence squeezed out just enough runs to lead the Indians to a 3-2 win over the Boston Red Sox.

In winning his first game since May 8, Masterson (3-4) held the Red Sox to three hits, while striking out a season high 10 and walking four.

Cleveland extended their winning streak to four games while Boston's seven-game winning streak was snapped.

John Lackey (6-4) went the distance for Boston, giving up a two-run single to Lonnie Chisenhall in the first inning and another run in the third.

Third baseman Kyle Seager had four hits and Felix Hernandez pitched seven innings for his fifth successive victory as the Seattle Mariners scored eight runs in the final three innings to beat the Yankees 10-2.

Seager hit two triples, a double and three-run home run for the Mariners.

Royals eclipse Cardinals

Danny Duffy allowed just one hit over six innings while the Royals scored three runs in each of the seventh and eighth inning on their way to a 6-0 win over the Cardinals. 

Duffy raised his record to 3-5 for Kansas City as the Cardinals were shut out for the second consecutive game.

Wilmer Flores hit his first career grand slam and drove in six runs as the New York Mets battered the Philadelphia Phillies 11-2.

Third baseman David Wright and outfielder Curtis Granderson drove in two runs each for the Mets.

Matt Garza threw a shutout into the seventh while Mark Reynolds and Jonathan Lucroy hit home runs to help the Brewers beat the Twins 6-2.

Lucroy finished 3-for-4 as Milwaukee (35-23) improved their National League Central lead to five games.

Source: AP