Dunn's blast wasn't nearly enough for the Nats, who matched the Cardinals in hits but failed to bring runners home.
Holliday is hitting .376 with eight home runs and 32 RBIs since joining the Cardinals on July 24. The NL Central leaders are 24-9 during that stretch, including a 17-4 mark over their last 21 games.
St. Louis is a season-high 21 games over .500 at 76-55.
"Our pitchers have been carrying us," Holliday said. "It's nice to give them a little bit of a cushion because they've been pitching so great."
Albert Pujols went 2 for 3 with two doubles, two runs scored and an RBI for the Cardinals. Pujols also drew two walks, including his major league-leading 39th intentional pass. Skip Schumaker had three hits, including two doubles, and an RBI.
"That's what makes their lineup good is they have multiple guys that can hurt you," Washington starter Craig Stammen said.
Cardinals starter Mitchell Boggs (2-2) was the beneficiary of all that offense. He went six innings, allowing eight hits and three runs with a walk and a strikeout.
"We had solid at-bats up and down the lineup, which we're cable of doing," St. Louis manager Tony La Russa said.
Adam Dunn hit his 35th homer and Ryan Zimmerman drove in two runs for the Nationals on a single and a sacrifice fly, giving him 90 RBIs. Wil Nieves drove in Washington's other run on a fielder's choice.
Thanks to the long balls by Holliday and Rasmus, the Cardinals took a 7-2 lead after five innings despite being out hit 7-5 at that point.
After spotting the Nationals a 1-0 lead on Zimmerman's first-inning sacrifice fly, the Cardinals grabbed the lead for good in the third. With one out, Brendan Ryan singled and Pujols walked. Holliday then drove Stammen's first pitch an estimated 388 feet into the Nationals' bullpen in left.
"I'm always looking to hit early in the count," Holliday said. "Everybody knows that. I get in the box, I'm ready to hit."
Stammen said he didn't miss by much.
"It was a fastball inside," he explained. "It was about 2 inches away from the first pitch I got him out on."
With the score 3-2 in the fifth, the Cardinals caught a break when Washington shortstop Cristian Guzman booted Ryan Ludwick's two-out grounder for an error. The ball rolled into short left field, allowing Pujols to score.
Left-hander Ron Villone was then brought in to face the lefty-hitting Rasmus, but that move backfired when Rasmus hit a 444-foot homer to right that made it 7-2.
"Rasmus is a talented guy," Washington manager Jim Riggleman said. "He's a lean-frame guy and he got every bit of that ball. But that's a matchup we felt we had to use there and it didn't go our way."
Stammen (4-7) gave up four hits and four walks in 4 2-3 innings. He allowed three earned runs.
NOTES: Rasmus was hitting .140 vs. left-handers (12 for 86) with one home run and six RBIs before taking Villone deep. ... Despite losses the last two nights, Washington (14-13) can clinch its first winning month since September 2007 with a victory in the series finale Sunday or on Monday in San Diego. ... St. Louis has won eight of nine at home. ... Pete Orr went 4 for 4 for Washington, the first four-hit game of his career. ... The Nationals, and formerly the Expos, have won just two of 15 series in St. Louis since the beginning of the 1997 season.