The Padres tied it in the top of the ninth on a leadoff homer by Jason Bartlett off Drew Storen, who became the winning pitcher when Morse hit his blast to left-center.
Washington halted a five-game losing streak and handed the Padres their sixth setback in seven contests.
All three runs came on solo homers. In addition to the two ninth-inning shots, Danny Espinosa hit his seventh of the year in the fifth inning for the Nationals.
The starting pitchers produced an excellent duel prior to the late long-ball drama. Washington's John Lannan allowed two hits and struck out five in 7 2/3 innings while San Diego's Clayton Richard surrendered three hits in seven innings.
Storen improved to 4-1 and Adams saw his record fall to 2-1 after throwing just one pitch.