The Angels had a five-run second inning but the Twins pulled together three-run rallies in the fifth and seventh innings and the four-run outburst that allowed Minnesota to withstand two Angels runs in the ninth.
There were 19 runs and 33 hits in the game. Denard Span finished with four hits, and Joe Maurer, Josh Willingham and Danny Valencia each collected three hits for the Twins, who won their second straight after opening the season with four losses.
Jeff Gray (2-0) retired the only batter he faced in the eighth inning for the win. He was the fifth Minnesota pitcher. Matt Capps picked up a save despite allowing three hits and two runs.
Rich Thompson (0-1), the fifth Los Angeles pitcher, gave up four runs and five hits in 1 1/3 innings in the loss.
Mark Trumbo set off the five-run second with a home run and Maicer Izturis had a two-run single for the Angels. Trumbo scored a run in the fifth for a 6-0 lead before Minnesota started to turn things around.
Maurer hit a three-run home run in the bottom of the inning and Josh Willingham homered -- his fourth in his first season with Minnesota -- to open the seventh in which the Twins ended up tying the score 6-6.
The Angels went up 7-6 in the eighth before the Morneau-powered Twins' rally. Los Angeles scored twice and had a runner on second when the game ended.