Weaver (9-1) -- who has allowed two earned runs or fewer in six straight starts -- scattered five hits and three walks, striking out two and tossing 67 of his 107 pitches for strikes.
Scott Downs completed the shutout with two no-hit innings for his seventh save as the Angels won for the sixth time in eight games and claimed the opener of a three-game set.
Cleveland's Ubaldo Jimenez (7-7) absorbed the loss, issuing three runs on eight hits over 7 2/3 frames. Sin-Choo Shoo had two of the Indians' hits.
Wisconsin business offering 'therapeutic cuddling' forced to close
Exploding whale video goes viral on Internet