The Angels took a 2-0 lead in the first inning on RBI singles by Morales and Juan Rivera, and then spent the rest of the game fighting off the Twins.
Minnesota left the bases loaded in both the sixth and seventh innings while trailing by one run.
Mathis delivered his home run in the second to put the Angels in front 3-2 and both Matsui and Morales hit their homers in the eighth to give the Angels some insurance. Brian Fuentes nailed down the victory by pitching a 1-2-3 ninth.
The victory went to Jered Weaver, who lost to the Twins on opening day two years ago. Weaver gave up three runs on five hits over six innings, striking out six.
Scott Baker absorbed the loss, surrendering four runs on five hits in 4 2/3.
Megyn Kelly: Santa Claus and Jesus are both white men
Costly malfunction causes beer flood at Boston-area brewery