First-half goals from Laurent Koscielny and Theo Walcott put the hosts in a commanding position at the break, before Andrej Kramaric pulled one back for Leicester.
Riyad Mahrez and Kramaric had chances to level for the visitors, but Arsenal held on to make it 22 home games unbeaten against the Foxes in all competitions.
The result leaves Leicester rooted to the bottom of the Premier League table, while Arsenal move into fourth place above Manchester United, with Louis van Gaal’s men playing Burnley on Wednesday night.
The visitors had the brighter start of the two, with Mahrez causing problems early on. The midfielder saw one shot deflected wide before drilling another effort across the face of goal as Arsenal looked nervy in the opening stages.
But Arsene Wenger’s men soon found their rhythm, and Walcott latched on to Mesut Ozil’s pass before failing to beat Mark Schwarzer with his chipped effort, then Alexis Sanchez headed over from the resulting corner.
Ozil was soon involved again, drilling a low shot which Schwarzer tipped wide, before firing in a corner towards the near post, where Koscielny raced in unmarked to volley low inside the upright and break the deadlock after 27 minutes.
Leicester continued to have the occasional move forwards, and the dangerous Mahrez curled a 20-yard effort just wide of the target, but on 41 minutes they fell further behind.
Ozil drilled a 30-yard shot towards the top corner which Schwarzer saved well, but parried it straight towards Walcott, who fired an excellent first-time volley into the corner of the net.
Nigel Pearson’s future looked uncertain earlier in the week but his half-time team talk seemed to have a profound effect on his players, particularly Kramaric, who fired one shot straight at the goalkeeper before putting the hosts back in the game on 61 minutes.
Esteban Cambiasso battled to keep the ball in the box and fired it across the area, where it eventually broke for the striker, and Kramaric drilled a low shot inside David Ospina’s near post to pull one back.
The comeback was nearly complete as the impressive Mahrez picked up a loose ball and raced towards the edge of the box, bending a low shot inches wide of the upright.
Kramaric then had another excellent chance of his own as Mahrez swept forward on the break, playing the ball into the striker, who tried to chip Ospina but could only play it straight into the goalkeeper’s arms.
Pearson threw on Leonardo Ulloa and David Nugent as he searched for an equaliser, but the visitors eventually paid for their missed chances as Arsenal saw the game out to take the points.
Arsenal: Ospina (7), Bellerin (6), Mertesacker (7), Koscielny (7), Monreal (6), Coquelin (7), Rosicky (6), Walcott (7), Cazorla (7), Ozil (8), Sanchez (7).
Used subs: Flamini (6), Ramsey (5), Giroud (6).
Leicester City: Schwarzer (6), Simpson (6), Huth (6), Morgan (7), Upson (6), Konchesky (7), Mahrez (9), Cambiasso (7), James (6), Schlupp (7), Kramaric (8).
Used subs: Ulloa (6), Wasilewski (6), Nugent (6).
Man of the match: Riyad Mahrez
See all of Tuesday’s Premier League goals on Sky Sports News HQ from midnight – or on Good Morning Sports Fans from 6am.