The Tigers' lead in the AL Central dropped to a half-game over Minnesota, which beat Boston 7-3. The White Sox snapped a four-game losing streak and stayed within 4½ games of the Twins in the wild-card standings.
"If I have to go somewhere, I'll go," Garcia said. "I love it here. I don't want to get out of here. I want to be here. I've got a house. My family is happy here, so I don't want to get traded."
Garcia came within four outs of a perfect game and gave up one hit over eight innings in a 9-0 win over the Angels in his previous start. He was just as good against the Tigers.
He retired 23 consecutive batters again -- this time after walking Curtis Granderson to start the game and allowing a single to center by the next batter, Ivan Rodriguez. He kept the Tigers off the bases until Brandon Inge walked with two out in the eighth.
Garcia (15-9) struck out five and walked two. Bobby Jenks pitched the ninth to complete the two-hitter.
Pierzynski gave the White Sox a 4-0 lead in the fourth with the fifth grand slam of his career.
"That was big," Garcia said. "A.J.'s a big-time hitter. ... For me, I was thinking right there, that's what I need."
The White Sox gave him a little extra, though.
Jermaine Dye and Jim Thome went deep with two out in the fifth and chased Tigers starter Justin Verlander (16-9), who allowed six runs, six hits and three walks while striking out two in 4 2/3 innings.
"The only bad pitch I made as far as the home runs are concerned was the one to Dye," Verlander said. "It was a fastball right down the middle. I thought the two breaking balls -- one to Pierzynski and one to Thome -- were decent pitches. They just went down and got them."
Tadahito Iguchi homered off Detroit's Chad Durbin leading off the seventh.
Garcia, whose ERA has stayed around 5.00 much of the season, gave the White Sox exactly what they needed while improving to 4-0 in five starts against the Tigers this year.
"He's a great pitcher," Rodriguez said. "Freddy is Freddy. He's been up and down this season, but right now he's on fire. He just hit his spots and kept the ball down."
Chicago had lost six of its previous eight games to put its postseason hopes in jeopardy. Former White Sox standouts Frank Thomas and Magglio Ordonez delivered stinging blows to their former team in the last three losses.
Thomas went deep Saturday and Sunday in Oakland to lead the A's to a three-game sweep.
Then, Ordonez hit two solo homers Monday to help the Tigers to an 8-2 victory that all but eliminated the White Sox from the division chase and left them 4½ back in the wild-card race.
Since taking a season-high 10-game lead in the AL Central after play on Aug. 7, when their record stood at 76-36, the Tigers have gone 14-25.
"There's a lot of baseball left," manager Jim Leyland said. "We're going to have to get rolling a little better offensively if we want to get in."
Verlander, attempting to become the majors' first rookie with 17 victories since C.C. Sabathia in 2001, simply fell apart in the fourth.
He hit Dye leading off and walked Thome before Paul Konerko singled to load the bases. Pierzynski then drove a 2-2 pitch out to right-center for his 16th homer and his first grand slam since May 16, 2005, against Texas.
Dye sent his 43rd homer to left-center in the fifth and Thome followed with his 41st, making it 6-0. It was the ninth time the White Sox hit back-to-back homers this season.
"No one on this team that I know of has quit," Pierzynski said. "Everyone's trying as hard as they can. That's all you can ask for."
- Pierzynski's grand slam was the White Sox's 10th this season, extending their club record.
- The Tigers shook up their batting order on Tuesday. Rodriguez batted second after hitting sixth the previous night. Sean Casey moved from seventh to third. And Matt Stairs served as the designated hitter, instead of Marcus Thames.