Thome added a double and drove in three runs, as the White Sox won for the fourth time in six games.
Mark Buehrle (10-9) lasted six innings to get the win, allowing four runs on nine hits.
The loss went to Johan Santana (15-13), who struck out 11 and walked only one, but gave up six runs on eight hits in seven innings. Santana has lost four of his last five starts.
Minnesota had won its previous three games.
Fields hit his first homer in the opening inning, but the Twins took a 3-1 lead in the third. Chicago went back in front for good in the fifth when Thome blasted a three-run shot to left, his 31st homer of the season.
Fields added a home run in the seventh and Bobby Jenks came on in the ninth to get his 39th save.