Jered Weaver struck out eight in winning for the third time in his last four decisions.
Los Angeles captured its second straight and stayed 4 1/2 games in front of Texas for the lead in the American League West. Those two teams will meet seven times in a 13-day stretch beginning Sept. 18.
Weaver (15-5) allowed two runs on seven hits in 6 1/3 innings. He left the game with a 4-2 lead and Juan Rivera added some insurance with a two-run homer in the eighth.
Los Angeles loaded the bases in the first against Ian Snell (6-10) on a walk to Maicer Izturis and singles by Bobby Abreu and Vladimir Guerrero. Torii Hunter then drew a walk to force in a run and Morales followed with his double to left-center, clearing the bases.
After Trevor Bell put two runners on in the ninth, Brian Fuentes came on to pick up his 40th save.
Chipotle plans first price increase in 3 years
Putin thinks Obama would save him if he were drowning