Oakland moved within a half game of Texas for the lead in the American League West.
Nick Swisher's run-scoring base hit in the top of the seventh lifted the Indians into a 2-2 tie, but the A's quickly regained the advantage in the bottom half of the inning.
After retiring the first two batters in the seventh, Cleveland starter Justin Masterson (13-9) gave up a bloop single to right by Stephen Vogt. Sogard then doubled Vogt home only to be thrown out trying to stretch his hit into a triple.
Sean Doolittle (4-4) picked up the win despite giving up the tying run in the top of the seventh.
Benedict Cumberbatch's dramatic reading of R. Kelly lyrics is just what you need
Jordana Brewster on Paul Walker: 'He was an enormous presence in my life'