After Chris Wood's instinctive finish against his former side had cancelled out Harvey Barnes' contentious opener, Leicester looked set to retake the lead when Ben Mee fouled the Foxes' goalscorer with 23 minutes remaining.
Vardy, however, lacked his usual composure from the spot, with Nick Pope making a smart stop down to his left and also denying Leicester's forward in a one-on-one soon after.
Pope's saves paid further dividends in the 79th minute as Ashley Westwood lashed home from the centre of Leicester's box and, despite a late glut of pressure, Brendan Rodgers' side could not find a way back.
Sunday's victory ends a four-match losing streak in the Premier League for Burnley, with Sean Dyche's side – who were furious that Barnes' opener was allowed to stand despite a robust challenge from Dennis Praet in the build-up – now up to 14th, five points clear of the relegation zone.
Leicester, meanwhile, have lost four of their past six league fixtures but remain in third place, six points above Chelsea.