Avila went 4-for-4 as did Fielder, who blasted a solo home run in the win, which ended Detroit's three-game losing streak.
Rick Porcello (12-8) gave the bullpen a break by going the distance for the first time this season, allowing one run on seven hits and striking out five.
Erik Johnson (0-2) took the loss after a short-lived start in which he allowed six runs – only two earned – on seven hits and three walks. Johnson struck out four but the White Sox coughed up four errors in the game.
Conor Gillaspie had two hits and drove in the only run for Chicago, who had won two in a row coming into the game.