Harper reached the agreement on Wednesday with Major League Baseball and began serving the suspension immediately.
He did not issue a statement and was not in the Nationals clubhouse before Wednesday night's game against the San Francisco Giants at AT&T Park.
Nationals manager Dusty Baker had mixed feelings about the decision.
"Very happy," Baker said when asked his reaction to Harper's suspension being reduced. "I'm not happy that it was three, but three's better than four. He'll miss this game tonight, and then he'll miss the first two days of the Oakland series, and hopefully, he'll be ready to play on Sunday."
The punishment stemmed from a bench-clearing brawl on Monday after Harper was hit by a 98 mph fastball from Giants reliever Hunter Strickland. There's no update on the discipline for Strickland, who received a six-game suspension and also had planned to appeal.
Strickland made his first appearance since drilling Harper on Wednesday night, pitching a scoreless eighth in the Giants' 3-1 loss.
The bad blood between the two players stemmed from a pair of home runs that Harper hit off Strickland in the 2014 playoffs.
MLB chief baseball officer Joe Torre's explanation of the disciplinary decisions indicated that Strickland intentionally hit "Harper with a pitch, inciting the bench-clearing incident and fighting," while Harper's suspension came "for charging the mound, throwing his helmet and fighting."
Each player also was fined an undisclosed amount.
Baker noted that Harper's decision to drop the appeal keeps him in line to return in time for a key series against the Los Angeles Dodgers beginning June 5.
"He didn't want to miss the L.A. series," Baker said Wednesday. "He realized the importance of that because, hey man, they beat us last year in the playoffs. And the way they're playing now, we're going to need every hand on deck."
Information from The Associated Press was used in this report.