The Tigers had rallied in the ninth on Audy Ciriaco's homer and Danny Worth's sac fly off D.J. Mitchell to tie the game at 2.
Scherzer had the strongest outing to date by a Tigers starter before running out of gas in the seventh. His first six scoreless innings kept Detroit in a duel with former teammate Garcia until Raul Ibanez's two-run home run broke a scoreless tie in the seventh.
Scherzer had given up seven runs over his previous two starts, but has felt all spring like he has been ahead of schedule from previous camps. On Saturday, he looked like it, mixing a mid-90s fastball with good offspeed pitching to rack up quick, easy innings and eight strikeouts overall.
Scherzer retired the first 16 batters he faced before Colin Curtis broke up his perfect game with a one-out single in the sixth. Scherzer stranded him there, then erased a hit-by-pitch with a double play in the seventh. But Mark Teixeira's ensuing single extended the inning for Ibanez, who sent a drive deep to center field for his first home run of the spring.
Ibanez, signed to a free-agent contract in mid-February, came into the day 2-for-37 with a double and two RBIs this spring.
Garcia, who allowed one hit over 4 1/3 innings, striking out four and walking two, combined with relievers Kevin Whelan and Boone Logan to retire 15 straight Tigers after Jhonny Peralta had Detroit's lone hit off Garcia. Peralta hit a sharp comebacker that bounced off Garcia's leg and rolled toward third base.
Up next: Shortstop Derek Jeter, recovering from a sore left calf, is expected to start Sunday for just the second time since March 14 against the Tigers at George M. Steinbrenner Field. Game time is 1:05 p.m. ET, live on MLB.TV. Right-hander Michael Pineda (1-0, 3.97 ERA) will make his fifth Grapefruit League start. His longest outing to this point is 3 2/3 innings.