D.C. (5-2-2, 17 points) entered the night 0-8-3 in the Ohio capital since 2007, but improved to 3-0-1 on the road this season with the victory.
The Crew (4-4-1, 13 points) have scored once in losing three straight for the first time since March 31-April 14, 2018.
Rooney made it 1-0 in the 27th minute with a well-placed free kick from 18 yards after Paul Arriola drew a foul on Josh Williams that resulted in a yellow card for the Crew defender. Rooney bent a low shot through the wall to the right corner.
His first goal in five games was his fifth of the season and 17th in 28 games since joining MLS in July. It was a welcome score for D.C., after being shutout in three of the previous four matches.
The Crew responded with two quick chances but were denied the equalizer.
First, D.C. defender Chris Durkin saved a goal with his clearance in the 36th minute. The Crew's Pedro Santos saved the ball from going over the end line and sent a service to the middle of the box. The ball came to Justin Meram, and his shot had Hamid beat, but Durkin was near the left post to clear the attempt away.
Three minutes later, Santos made an entry pass to Federico Higuain, who pivoted and forced Hamid to tip the ball over the crossbar. Hamid came up big again early in the second half with a kick save on Meram and he stopped a close-range shot by Santos in the 69th.
Higuain had a 25-yard free kick seven minutes later, but the strike was just over the crossbar, and Hamid got his fifth shutout of the season.
The Crew play at Houston on Saturday. D.C. United are on the road Sunday against Minnesota United.