Arsenal progressed into the fourth round of the FA Cup but they were given a tough time by a brave Burnley side.
Eduardo continued his rich vein of scoring with the opening goal
Kyle Lafferty's header hit the bar for the hosts before Eduardo slotted home.
Robbie Blake and Chris McCann fired over as Burnley rallied but James O'Connor had to hack off the line to clear Gilberto's deflected header.
Lafferty saw red for a foul on Gilberto on the hour and though the Clarets battled away, Nicklas Bendtner sealed the win after Eduardo played him in.
Burnley will now turn their thoughts towards improving their recent poor form in the Championship.
But they will wonder what might have been after giving the Premier League leaders more than a run for their money with a performance that evoked memories of their shock third-round win over Liverpool in 2005.
They could have been in front as early as the sixth minute, when Lafferty's firm header from Andy Gray's cross beat the recalled Jens Lehmann before bouncing back down off the woodwork.
Eduardo made the Clarets pay by tapping past Gabor Kiraly for his sixth goal in four games after Kolo Toure's excellent defence-splitting chipped pass.
The home side showed tremendous spirit, and no shortage of style, as they took the game to their more illustrious opponents.
Blake was at the heart of most of their crisp passing movements and gave the Gunners another scare when he fired just over.
The danger of a swift Arsenal counter-attack was always present, however, and it needed a desperate clearance from O'Connor when Gilberto's header from Denilson's corner was deflected goalwards by the outstanding Jon Harley.
Burnley could still have gone in level had McCann been more accurate from inside the box when Armand Traore could not control a deep cross from the impressive Lafferty.
Burnley responded well to the setback of Lafferty's dismissal
Arsenal, while never on the rack, should have had some breathing space in the 50th minute when Bendtner's flicked pass put Eduardo clear but, by his own high standards, the prolific Croatia star shot surprisingly wide.
That actually came in the middle of another spell of Burnley pressure, in which Blake, Lafferty and Wade Elliott were regularly finding space to trouble the visitors' back four.
McCann lost his marker to head Blake's free-kick over from six yards and the warning signs were there for the Gunners.
But Lafferty's afternoon was over on the hour when he raised his studs while sliding in for a tackle on Gilberto and referee Alan Wiley pulled out the red card without hesitation.
Somehow, it seemed to inspire Burnley and, if anything, they poured forward with even more purpose, with O'Connor, Blake and Elliott buzzing all over the place.
Philippe Senderos had to be at his best to prevent Gray from getting to Elliott's teasing cross.
It proved crucial as soon after Eduardo's simple yet devastating pass was weighted perfectly for Bendtner to take the ball wide of Kiraly and finish the game as a contest with 15 minutes left.
Eduardo could have added some gloss to the scoreline moments later but Kiraly thwarted him.
A third goal would have been desperately harsh on a Burnley side that acquitted itself admirably.
Burnley: Kiraly, Alexander, Caldwell, Varga, Harley, Elliott, James O'Connor (Gudjonsson 76), McCann, Lafferty, Blake (Jones 79), Gray (Akinbiyi 79).
Subs Not Used: Jensen, Jordan.
Sent Off: Lafferty (60).
Arsenal: Lehmann, Sagna, Toure, Senderos, Traore (Justin Hoyte 71), Eboue, Silva, Denilson, Diaby, Bendtner, Eduardo.
Subs Not Used: Fabianski, Djourou, Randall, Lansbury.
Goals: Eduardo 9, Bendtner 75.
Ref: Alan Wiley (Staffordshire)
BBC Sport Player Rater man of the match: Arsenal's Eduardo 7.99 (on 90 minutes).
Please note that you can still give the players marks out of 10 on BBC Sport's Player Rater after the match has finished.