Punto's three-run homer came after Angels shortstop Orlando Cabrera botched a double-play ball in the sixth inning. It was the first error by the Gold Glove shortstop in 648 chances. His last error was on May 29, 2006.
Punto's homer was the second given up by Angels starter John Lackey who fell to 9-and-4.
The win snapped Minnesota's four-game losing streak and the Angels five-game winning streak.
Kevin Slowey gave up five runs on ten hits in five-plus innings to earn his first major league win.