Tony Diagne and Danny Rowe gave the home side a 2-0 lead in the first half, and while Dave Hockaday's side were able to pull a goal back through Jordan Murphy, Kidderminster fell to their ninth defeat in 16 games.
In the games that kicked off on Saturday afternoon, Forest Green Rovers continued at the top of the table with a 3-0 home win over Guiseley. Elliott Frear finished with a half-volley in the first half, before Jon Parkin and Anthony O'Connor sealed the win early in the second half.
Bromley moved up to fourth in the table after a 5-0 thrashing of Barrow following first-half goals from Jack Holland and Anthony Cook, and second-half finishes from Reece Prestedge, league top scorer Moses Ademola, and Louis Dennis.
Tranmere Rovers are down two places to fifth due to a 2-1 home defeat to Eastleigh, with Joe Partington putting the visitors ahead early in the second half. Lois Maynard then saw red, and James Constable made use of the man advantage by scoring his side's second before being sent off himself. Tranmere were able to get back into the game with a Steve Jennings goal, but it was not enough to secure a point.
Results in full: Macclesfield Town 2-1 Kidderminster Harriers (2-0), Aldershot 2-0 Altrincham (1-0), Boreham Wood 2-0 Welling United (1-0), Braintree Town 0-0 Grimsby Town (0-0), Bromley 5-0 Barrow (2-0), Chester 2-3 Lincoln City (1-2), Dover Athletic 2-1 Wrexham (1-1), Forest Green Rovers 3-0 Guiseley (1-0), Gateshead 1-1 Cheltenham Town (1-0), Halifax 0-3 Woking (0-1), Southport 0-1 Torquay United (0-1), Tranmere 1-2 Eastleigh (0-0)