Ryan Sweeney was intentionally walked and Mark Ellis was hit by a pitch, loading the bases. Gross then reached on his infield base hit that brought home Rosales and Landon Powell followed with a sacrifice fly that produced an insurance run.
That extra run proved vital when Cabrera hit a solo homer in the bottom of the ninth. Cabrera also hit a two-run blast in the first and another solo shot in the fourth to account for all the Detroit runs.
Oakland improved to 3-1 on its 10-game road trip and has won six of its last seven. The Tigers have dropped five out of six.
Brad Ziegler (2-2), who worked the eighth in relief of Ben Sheets, picked up the victory. Andrew Bailey collected his 10th save despite giving up Cabrera's ninth-inning homer.