Matt Holliday also homered and Matt Carpenter smacked a three-run double for the Cardinals, who had scored only one run during their four losses while allowing 32. Freese, John Jay and Allen Craig each had three of the Cardinals' 14 hits.
The NL East-leading Nationals led 6-2 in the second inning and, after falling behind by two runs in the fourth, rallied for three in the sixth to take a 9-8 lead. Adam LaRoche and Danny Espinosa each homered for Washington.
St. Louis tied it in the eighth on Carlos Beltran's pinch-hit single off Nationals reliever Sean Burnett. Craig led off the ninth with a single against Drew Storen (1-1). One out later he stole second base and later raced home on Freese's looping hit over the Nationals infield.
Link to boxscore: St. Louis 10 at Washington 9