Former MK Dons striker McLeod converted an early second-half penalty after he had been fouled by Louis Thompson, who was shown a straight red card.
Swindon, who like their opponents went into the game boasting two wins in league and cup, threatened early on when midfielder Louis Thompson forced goalkeeper Brian Jensen to tip over his 25-yard shot.
Crawley striker McLeod was off target at the near post before Swindon's Yasir Kasim saw a deflected shot go just wide.
The Robins went close again when Ben Gladwin put the ball over from Kasim's short pass.
Crawley came back into the contest before the break and, after Gavin Tomlin was thwarted by Swindon goalkeeper Wes Foderingham, the unmarked McLeod wastefully headed Ryan Dickson's cross over.
Swindon midfielder Massimo Luongo had a goal-bound effort parried by keeper Jensen before Crawley broke the deadlock through McLeod after 51 minutes.
Former MK Dons striker McLeod, bursting clean through, was fouled inside the area by Thompson, a challenge which brought him a straight red card, and McLeod stepped up to hit his third goal of the season from the penalty spot.
Kasim was denied by a diving save from Jensen after good work inside the penalty area by Luongo, before a fierce shot from Crawley midfeilder Gwion Edwards came back off the crossbar.