Former Crystal Palace midfielder Neil Danns returned to haunt his former club as Leicester won for the first time in six attempts.
Danns, who left Selhurst Park in the summer, capitalised on a goalkeeping mistake to put his side into the lead.
Sol Bamba nodded in at the far post to double the advantage, before Palace pulled one back through Jonathan Parr's curling shot.
Leicester's Steve Howard was sent off late on, but the Foxes held firm.
As well as recalling the impressive Danns, City manager Nigel Pearson handed a full debut to 18-year-old Liam Moore, a first run-out in 16 months for Tom Kennedy and a return for Aleksandar Tunchev, whose last appearance was for Palace on loan in October.
The changes worked when Danns opened the scoring after 19 minutes, curling home after Palace keeper Lewis Price saw his clearance bounce off his own defender and straight into the path of the midfielder.
It was harsh on Palace, who went close through Owen Garvan and Wilfried Zaha before the Foxes doubled their lead.
Danns swung in a free-kick which was helped on by David Nugent and headed home by centre-half Bamba.
Full-back Parr deceived Kasper Schmeichel to pull one back for Palace and ensure a competitive second half.
The home side created a number of chances to earn a share of the spoils, but Schmeichel denied Zaha and Jermaine Easter and Chris Martin's shot was deflected wide.
Howard was shown a straight red card for something he said to the linesman, but Palace could not make their numerical advantage count in the final 15 minutes.