The result – in what was Arsene Wenger's penultimate match in charge of the club – means the Gunners have now lost seven in a row on the road for the first time 1966.
Arsenal were second best from the outset and suffered a double blow early on. Kelechi Iheanacho netted just his second Premier League goal of the season in the 14th minute and 92 seconds later Konstantinos Mavropanos was shown a red card after being deemed to have denied the Nigerian a clear goalscoring opportunity.
The Foxes could have been out of sight by half-time, but Arsenal held firm and got their reward eight minutes after the interval when Pierre-Emerick Aubameyang pulled them level.
Any hopes of ending their abysmal away run were extinguished when Vardy lashed home from the penalty spot, and Mahrez rubbed salt in the wounds at the end of a brilliant counter-attack in the 90th minute.
Arsenal started on the front foot and could have broken the deadlock after seven minutes, but Eldin Jakupovic palmed Alex Iwobi's clipped effort around the post.
Vardy's drive from an acute angle was thwarted by Petr Cech before Iheanacho took advantage of some generous Arsenal defending to open the scoring with a controlled volley from Fousseni Diabate's knock-down.
The Gunners' frustrations deepened less than two minutes later when Mavropanos received a straight red card for hauling down Iheanacho after the former Manchester City man picked his pocket around 40 yards from goal.
Harry Maguire almost doubled Leicester's lead from the resulting free-kick, but Cech tipped his powerful volley over the crossbar.
The Gunners twice went close to finding an unlikely leveller before the interval through Henrikh Mkhitaryan and Rob Holding, but neither could find the back of the net.
Both sides' attacking intent was evident after the restart with Sead Kolasniac crashing against the post from an acute angle before Diabate saw his clipped shot over Cech cleared off the line by Shkodran Mustafi.
Arsenal's more purposeful approach was rewarded in the 53rd minute when Aubameyang netted his ninth league goal since joining from Borussia Dortmund in January.
Ainsley Maitland-Niles found the Gabon international 10 yards out following a stirring run and, after Jakupovic had saved his initial effort, he crashed the rebound into the roof of the net.
9 - Since making his Premier League debut, only Mohamed Salah (12) has scored more goals in the competition than Pierre-Emerick Aubameyang. Impact. pic.twitter.com/0roZ322z7G— OptaJoe (@OptaJoe) May 9, 2018
Their hopes of clinging on for a first away point of 2018 were ended in the 76th minute when Mkhitaryan tripped substitute Demarai Gray in the box, Vardy stepping up to score his sixth goal in six games against the Gunners with a superb strike into the top left corner.
Mahrez had the final say, cutting in from the right, checking inside Holding and firing past Cech to complete a miserable evening for Wenger's men.
Key Opta stats:
- Arsenal have lost seven consecutive top-flight away matches for the first time since January 1966 – the Gunners last went on a longer run of consecutive away defeats in May 1925 (13).
- The Gunners have now lost 11 Premier League games on the road this season equalling their highest number of away defeats in a single campaign (also 11 in 1994-95) and are the only side across the top four tiers of English football yet to pick up an away point in 2018 (P7 W0 D0 L7).
- Arsenal have conceded over 50 goals in a single campaign for the first time in the Premier League and for the first time in the top flight since 1983-84 (60), which was also the last time they finished sixth.
- Since his Premier League debut in August 2014, Jamie Vardy has scored 24 goals against the big six sides – four more than any other player during this period (Sergio Aguero, 20).