The Twins won their third in a row by overcoming an early two-run deficit. The Indians had a four-game winning streak snapped.
Minnesota took advantage of a key error to tie the score in the sixth, putting together a rally after the first two batters in the inning were retired.
Pedro Florimon drew a walk and the Twins then put runners on second and third when Cleveland third baseman Lonnie Chisenhall was charged with a fielding error on a ball hit by Brian Dozier.
Trevor Plouffe followed with a single to right to bring in two unearned runs.
Plouffe grounded into a double play, but Mauer came through with a single to center that delivered Florimon.
Casey Fien (2-2) picked up the victory by working the eighth inning and Glen Perkins turned in a perfect ninth for his 22nd save.