The conclusion of the congested festive schedule saw a tired display by the Londoners who looked set to draw a blank for the second straight home game before Bendtner bundled home in the 88th minute and Walcott wrapped up the points in stoppage time.
Manchester United's difficulties returned as the champions were beaten 2-1 by Tottenham Hotspur at Old Trafford, their sixth league defeat and fourth at home in a stuttering season.
Manchester City had briefly gone top after subduing a battling Swansea City 3-2 away while Chelsea beat Southampton 3-0 on the road and Liverpool won 2-0 at home to Hull City
Fernando Torres became the first Chelsea striker to score a league away goal in 13 months as they maintained their title push and Christmas Day leaders Liverpool regained a top-four spot as Luis Suarez netted for the 20th time this season.
Arsenal, with 45 points from 20 games, stayed one point clear of Manchester City and two ahead of Chelsea in third with Liverpool a further four points off the pace.
Everton's Leighton Baines converted an added time penalty to rescue a 1-1 draw at Stoke City, although the Merseysiders still dropped to fifth, while 10-man Newcastle United stumbled to a 1-0 defeat at West Bromwich Albion.
Tottenham, who took a 2-0 lead with goals from Emmanuel Adebayor and Christian Eriksen before Danny Welbeck pulled one back for United, are sixth. David Moyes's United team are 11 points adrift of the leaders in seventh.
At the bottom, Fulham edged 10-man West Ham United 2-1 with the east London side staying second-bottom above Sunderland, who lost 1-0 at home to Aston Villa. Crystal Palace are 18th after a 1-1 draw with 15th-placed Norwich City.
Image: Nicklas Bendtner
Photograph: Dylan Martinez/Reuters
Cardiff set to appoint Solskjaer: Media Reports
EPL: Wenger hails resilience of table-topping Arsenal
EPL PHOTOS: Suarez fires Liverpool as Arsenal, Chelsea, City win
Liverpool skipper Gerrard could return for Hull clash
EPL: City go top with tough win over Palace