The result means that Charlotte were eliminated from playoff contention in the Eastern Conference.
The Crew (10-7-16, 46 points) currently hold the seventh and final playoff spot in the East. Inter Miami previously sat below Columbus, but they defeated Orlando 4-1 later Wednesday night and now sit at fifth in the conference. Cincinnati, which also has 46 points, sits at sixth.
Charlotte (13-17-3, 42 points) needed a win to stay alive and ends its regular season Sunday at Orlando.
Zelarayan scored his 10th and most spectacular goal of the season in the 36th minute to give the Crew a 1-0 lead, a free kick from 56.1 yards. Luis Diaz made it 2-0 in the 54th minute before Daniel Rios scored his fifth goal in the past two matches for Charlotte to cut the deficit to 2-1 in the 58th minute.
Andre Shinyashiki then stepped up to score a stoppage-time equaliser to rescue a point for the hosts.
The match was the completion of the July 30 match that was suspended in the 16th minute because of inclement weather.
Charlotte goalkeeper Kristijan Kahlina was the victim of Zelarayan's masterpiece.
Zelarayan surveyed the situation before his restart and spotted Kahlina wandering 15 yards from the net and he drilled a shot to the far netting.
Since joining MLS in March 2020, Zelarayan has scored 17 goals from outside the box in regular season play, more than double of any other player in the league during that span. Randall Leal of Nashville SC is second with eight.
According to MLS Communications, Zelarayan scored the longest free kick goal in the league since the stat began being kept in 2010.