Nick DeLeon scored in the 36th minute for United (3-23-6), which had ample opportunities to build on its lead but went its 10th straight match without a victory.
The Union (12-10-10) maintained at least a temporary hold on the fifth and final playoff spot in the Eastern Conference.
The Chicago Fire could move ahead of Philadelphia on the first tiebreak of total wins later Saturday at FC Dallas since a victory would pull the Fire equal with the Union's 46 points.
The New England Revolution lurk just one point behind. All three teams have two matches remaining.
McInerney scored his first goal since June 1 on a clear header from inside the 6-yard box after reaching Kleberson's cross from the left.
The 21-year-old celebrated his team-leading 11th goal by stripping his shirt and racing toward a boisterous section of Union fans tucked under RFK Stadium's upper deck.
The goal came after United missed several chances to close the game out, the most notable coming just several minutes before when goalkeeper Zac MacMath streaked out of his goal but lost a foot race to United's Conor Doyle.
Doyle found Chris Pontius in the middle of the penalty area with MacMath still stranded, but Pontius' shot well high.
DeLeon scored his second goal of the season on a swerving strike from 30 yards after reaching Lewis Neal's pass from deeper in midfield. With space around him, DeLeon took three touches before unleashing a vicious shot that gave MacMath little chance.
Philadelphia's Sebastien Le Toux left the match in the 16th minute after apparently re-aggravating a foot injury.