The Toffees restored the lead on an own goal before Romelu Lukaku sealed the three points with a toe-poked finish - the ninth successive Goodison Park fixture he's netted in - in the 74th minute.
However, it was the visitors who started the match on top and Everton's Ross Barkley - a man in the headlines the past seven days - had to be alert to nod off the line from Michael Keane's header after 18 minutes. Burnley were hassling Everton and Vokes was the next to go close, first seeing an effort saved by Robles before failing to punish a horror back pass from Jagielka eight minutes before the interval.
It was a lacklustre performance from Ronald Koeman's charges in the first 45, but the home team re-emerged for the second period far more positively.
That energy helped give them the lead when Jagielka's header was palmed off the line by Tom Heaton before the defender fired in from close range for his third goal in three matches.
But the lead lasted just a couple of minutes as Vokes, heading away from goal, was inexplicably taken down by Robles inside the Everton box, with the Welshman picking himself up to tuck into the back of the net from the spot.
Kevin Mirallas twice went close to restoring the Everton lead before Barkley's scuffed shot from the edge of the box took a heavy deflection off Ben Mee and nestling into the far corner on 71 minutes.
And with 15 minutes to play, the Toffees went 3-1 up as Lukaku showed his brute strength to spin past Keane before prodding past Heaton with power from 10 yards.
This is the first time Everton have won eight home matches in a row since 1990 as they move up to fifth in the Premier League, for now at least.
Burnley, eight points above the drop zone, aren't quite safe yet.