Boston jumped to a 3-0 lead through two innings and a parade of hurlers from the bullpen protected the advantage.
David Ortiz hit a solo homer in the first, his 23rd home run of the year, and Pedro Ciriaco had a two-run single in the second. The Red Sox had lost six out of seven prior to the All-Star break.
Morales (2-2) gave up two hits and struck out five.
Alfredo Aceves threw 10 pitches during a perfect ninth for his 20th save. The six Boston pitchers combined to strike out 11.
Jeremy Hellickson (4-6) lost his sixth straight decision, giving up three runs on five hits in six-plus innings.