Palace were coasting to victory but three goals in the final nine minutes - from Ruben Loftus-Cheek, Patrick van Aanholt and Christian Benteke respectively - have boosted the club's hopes of remaining in the top flight.
The first real opening of the game went the way of Leicester's Kelechi Iheanacho but after seemingly being perfectly placed to meet Ben Chilwell's cross, the forward headed harmlessly over the crossbar.
Moments later, the Nigerian saved his side by clearing off the line from James Tomkins before back up the other end, Joel Ward did the same to prevent Jamie Vardy's effort from 16 yards finding the bottom corner of the net.
When the breakthrough came in the 17th minute, it was in some style. Three Palace players were involved on the edge of the penalty area before McArthur's back-heel went into the path of Zaha, who lashed a shot into the roof of the net from 14 yards out.
Leicester continued to have joy up the opposite end of the pitch but as the first half progressed, Palace began to dominate with Ben Hamer being required to keep out a half-volley from Zaha.
However, Palace did not take long to double their advantage through McArthur, who collected a pass from Zaha before finding the bottom corner of Hamer's net with an effort on the turn.
Claude Puel opted to make two Leicester changes at the break with Adrien Silva and Fousseni Diabate being introduced but it failed to lead to the visitors creating any more openings at the start of the second half.
The alterations quickly came back to bite Puel as Wilfred Ndidi sustained a hamstring injury, resulting in a final switch being made after just 51 minutes, and things soon went from bad to worse for the Foxes.
When the ball was played over the top of the defence, Albrighton opted to pull back Zaha and although the pass would have gone through to Hamer, referee Mike Dean viewed it as a sending-off offence.
Palace had the chance to go out and score further goals but instead, focus was placed on seeing the game out and only a half-chance from McArthur threatened Hamer's goal.
However, Palace changed their approach during the final 10 minutes and closed out the contest in style, scoring three times in nine minutes in front of their jubilant supporters.
The third goal arrived through Loftus-Cheek, who latched onto a through-ball from Mamadou Sakho before rounding Hamer and slotting the ball into an empty net.
Jeffrey Schlupp nearly got in on the act but after seeing his one-on-one effort blocked by Hamer, the ball ricocheted into the path of Van Aanholt who curled a shot into an empty net from the edge of the area.
With a minute remaining, Benteke was felled by Harry Maguire inside the 18-yard box and given the scoreline, the Belgian forward was given the chance to score his first league goal at Selhurst Park this season.
The substitute slipped when making connection with the ball but his strike still found the centre of the goal to cap a perfect afternoon for Hodgson's team.
CRYSTAL PALACE (4-4-2): Hennessey; Ward, Tomkins, Sakho, Van Aanholt; Loftus-Cheek (Lee 86'), McArthur (Schlupp 83'), Cabaye, Milivojevic; Townsend (Benteke 86'), Zaha
LEICESTER CITY (4-4-2): Hamer; Albrighton, Maguire, Morgan, Chilwell; Gray, Choudhury (Silva 46'), Ndidi (Dragovic 51'), Mahrez; Iheanacho (Diabate 46'), Vardy