Williams also was fined an undisclosed amount for his "prolonged arguing and inappropriate conduct" during the bottom of the eighth inning in Houston's 5-4, 10-inning loss.
Plate umpire Gary Darling called the pitch a foul ball, but second base umpire Rob Drake overruled the call, claiming the ball glanced off Garcia's helmet. Williams was ejected during the ensuing argument.
"Some umpires have better than 20/20 vision," Williams said after the game. "That umpire must have better than 20/20 hearing. He heard the ball hit the helmet from second base."
Williams was expected to serve his suspension Friday night when his team hosts the New York Mets.
'SNL': 'Anchorman 2' cast, One Direction sing 'Afternoon Delight' [VIDEO]
Reindeer recovered after escaping from Santa during lighting ceremony