The Mariners posted an early 3-0 lead thanks to a pair of Raul Ibanez homers.
The Athletics, however, chipped away at the advantage, scoring two in the sixth and then tying it on a Brandon Moss solo homer in the eighth off Danny Farquhar.
But Seattle struck back in the 10th against A's closer Grant Balfour (0-1).
Mike Zunino reached first base after striking out on a wild pitch, then moved to third on Michael Saunders' single.
That brought up Morales, who cracked the first pitch he saw into the right-center field bleachers for a game-winning three-run homer.
Oliver Perez (2-1) was credited with the victory after two scoreless relief frames as Seattle took two of three from Oakland.
Seth Smith had three hits for the A's, who completed a 2-5 road trip with the loss.