Cahill (2-2) threw 66 of his 94 pitches for strikes and held Washington to six hits while issuing only one walk and striking out five.
Justin Upton went 2-for-4 with a pair of RBI while Miguel Montero and John McDonald each added two hits and an RBI for the Diamondbacks, who won for the fourth time in five contests on their current 10-game road trip.
The Nationals' Jordan Zimmerman (1-2) absorbed the loss, yielding four runs (three earned) on eight hits over 6 1/3 frames.
Ian Desmond collected the lone RBI for Washington, which dropped its fifth straight.
Duggar sisters unveil Christian dating rules in new book
Astronomers offer more expansive view of universe