Ahead of the game, speculation had suggested Puel had lost the backing of the dressing room but that wasn’t reflected on the pitch as a well-organised Foxes side enjoyed their trip to the capital.
Leicester hadn’t won at Stamford Bridge for 18 years but were good value for Saturday’s success as they frustrated the Blues, Vardy finishing off a fine attacking move six minutes after half-time to inflict a first home defeat on Maurizio Sarri.
It is now three losses in the last six Premier League games for Sarri’s men, who remain 11 points behind leaders Liverpool heading into Christmas.
Chelsea dominated possession from the off but struggled to create too many clear openings during the first half.
It wasn't until a mistake at the back from Leicester that the Blues went close to scoring, Harry Maguire failing to cut out a through ball, allowing topscorer Eden Hazard to run on but the Belgian couldn't finish, smashing his effort off the bar.
Having had to defend for nearly the entire first period, Wilfried N'Didi nearly grabbed a spectacular opener when unleashing a rasping long range effort, forcing Kepa Arrizabalaga into a brilliant one handed save.
From the resulting Leicester corner, Chelsea broke quickly, N'Golo Kante feeding the ball to Willian, who should have done better, striking the ball straight at Kasper Schmeichel.
Vardy then provided the decisive moment in the 51st minute when latching on to James Maddison’s through ball, lashing his shot past Arrizabalaga at the near post.
Schmeichel had to make a smart save to deny Hazard’s near post strike before Leicester wasted two good chances to add to their lead, Cesar Azpilicueta making a goal-saving block to deny Vardy.
Marc Albrighton’s low drive through a crowd of bodies then forced Arrizabalaga into a good save.
Having found Leicester tough to break down all afternoon, Chelsea finally created a clear opening in the 90th minute when Marcus Alonso was put through on goal. However, the Spaniard couldn’t provide the finish as his effort struck the post.