Hamels (4-11) followed up a 6-4 victory over Pittsburgh in his previous outing with another efficient effort Tuesday, yielding just one run on six hits. The left-hander walked one and struck out four.
Anthony Bastardo gave up a run in the ninth but finished with his second save for Philadelphia, which corralled a third consecutive win and sixth in eight games overall.
Michael Young's two-run double capped a three-run sixth that broke the game open for the Phillies.
Rookie Taylor Jordan (0-2) absorbed the loss in his third major league start, surrendering four runs (three earned) on eight hits in a 5 2/3-inning effort.
Jayson Werth homered for Washington.