Nketiah was released by Chelsea as a 16-year-old in 2015 and he exacted a measure of revenge with his first league goals this season.
The 22-year-old put Arsenal ahead early on at Stamford Bridge before Timo Werner equalised.
Mikel Arteta’s side regained the lead trough Emile Smith Rowe, only for Cesar Azpilicueta to draw Chelsea level again.
Nketiah settled a pulsating London derby when he punished shambolic Chelsea defending in the second half and Bukayo Saka bagged the fourth with a stoppage-time penalty.
After losing their last three games, Nketiah’s crucial contribution lifted Arsenal back into the race to qualify for next season’s Champions League via a top-four finish.
The Gunners are in fifth place, behind fourth-placed Tottenham on goal difference with both teams having six games to play.
Arsenal’s hopes of returning to the Champions League for the first time since 2017 face another vital test against sixth-placed Manchester United on Saturday.
FA Cup finalists Chelsea remain in third place, but they are now only five points ahead of Arsenal and cannot take a top four place for granted.
Stamford Bridge was at slightly less than full capacity as ticket restrictions, triggered by the British government sanctions on Roman Abramovich, took hold for the first time.
Those who were allowed in were treated to a thrilling first half, with Romelu Lukaku’s travails continuing as the misfiring Chelsea striker scuffed a good chance wide in the early stages.
With Thiago Silva and Antonio Rudiger absent, Chelsea’s defending was extremely unconvincing and Arsenal took the lead in the 13th minute.
– Shambolic Chelsea –
Andreas Christensen made a hash of his back-pass and, with Malang Sarr caught out of position, Nketiah was able to sprint clear and plant a composed finish past Edouard Mendy from the edge of the area.
Werner dragged Chelsea level just four minutes later when Ruben Loftus-Cheek intercepted Nketiah’s pass and teed up the German, whose 20-yard shot deflected off Granit Xhaka and looped beyond Aaron Ramsdale.
Chelsea were hit with a sucker punch in the 27th minute as Xhaka and Saka led an incisive counter from a Blues corner, with Martin Odegaard teeing up Smith Rowe for a low strike past Mendy.
But Arsenal’s defence was just as creaky as Chelsea’s and the visitors conceded again five minutes later.
Ben White’s pleas for a foul by Werner were ignored and Mason Mount whipped over a superb cross for Azpilicueta to slot home from close range.
Smith Rowe was inches away from restoring Arsenal’s lead as he wriggled past three defenders and shot just wide.
Tuchel sent on Silva for Christensen at half-time, but the Brazilian’s introduction did nothing to cure Chelsea’s shambolic defensive display.
In the 57th minute, Silva’s tackle diverted the ball towards Sarr and N’Golo Kante, but neither reacted quickly enough to clear before Nketiah poked his shot past Mendy.
Lukaku has not scored in the Premier League since December against Brighton, with his only goals since then coming against less than formidable opposition in Chesterfield, Al Hilal, Palmeiras, Luton and Middlesbrough.
Once again, Chelsea’s £97 million club record signing was largely anonymous before being replaced by Kai Havertz.
Marcos Alonso almost snatched an equaliser when Ramsdale spilled Reece James’ cross, but the defender’s goalbound shot was blocked.
Saka delivered the final blow, calmly converting a penalty after Azpilicueta hauled down the Arsenal forward.
It was the 11th goal conceded by Chelsea in their last three home games and Azpilicueta’s frustration boiled over in an angry exchange with a fan after the final whistle.