The veteran right-hander had a no-hitter against his former team through five innings.
He threw the first pitch in Nationals' history in 2005 and played three-plus seasons with the franchise -- dating back to its days in Montreal -- before he was traded to Arizona last season.
Ryan Zimmerman broke up the no-hitter with a ground-rule double with two outs in the sixth.
Chris B. Young hit an RBI single; and Orlando Hudson had two hits, one run and one RBI for the Diamondbacks, who have won four of five.
Austin Kearns drove in Washington's only run with an RBI single in the eighth.
Loser Shawn Hill (0-2) allowed two earned runs and six hits in 6 2/3 innings, with two walks and two strikeouts.