The England winger's quickfire double got Arsenal's title hopes back on track after a run of three Premier League games without a win and ensured London rivals West Ham dropped into the relegation zone.
Arsene Wenger's side had to respond to falling behind to Carlton Cole's 46th minute tap in following a mistake from Wojciech Szczesny.
Walcott levelled in the 68th minute with a shot that ought to have been kept out by Adrian, before sending a powerful header home after meeting a cross from the returning Lukas Podolski, who was introduced after Aaron Ramsey had hobbled off with a muscle strain.
Podolski himself sealed the win 11 minutes from time, marking his first appearance since August after a lay-off with a hamstring injury in style with a well taken goal from Olivier Giroud's lay-off.
Kevin Nolan returned from suspension as Sam Allardyce made four changes, while Arsenal midfielder Santi Cazorla came in for Tomas Rosicky (knock).
The hosts started strongly and Mark Noble tested Szczesny with a curling free-kick from the corner of the penalty area in the 10th minute.
Arsenal responded well and tested Adrian for the first time five minutes later, the goalkeeper leaping to his right to keep out Cazorla's powerful header from the edge of the box.
Mohamed Diame sent in a rasping drive from 30 yards which Szczesney gathered at the second attempt in the 25th minute. Walcott ought to have given the visitors the lead a minute later, when he volleyed wide from eight yards after being picked out by Ramsey's chipped pass.
Cazorla fizzed a 20-yard shot a foot over Adrian's crossbar before Giroud scuffed his shot wide 30 seconds later when through on goal.
The visitors continued to press for the opener, Mikel Arteta sending his volley a yard wide from the edge of the box a minute before the break.
But they were stunned when Cole put the hosts in front inside the first minute of the second period, turning home the rebound from seven yards after Szczesny had spilled Nolan's shot from the edge of the box.
West Ham had three clear chances to double the advantage in the next 10 minutes, Szczesny beating away Matt Jarvis' effort before Joey O'Brien and Cole were both guilty of missing the target from close range.
O'Brien headed wide when unmarked eight yards out, before Cole poked an effort of target from similar range.
Arsenal threatened an equaliser on the hour-mark, Adrian denying Cazorla before reacting smartly to keep out Mesut Ozil's follow-up with his legs.
The equaliser did arrive eight minutes later, Walcott cutting inside before scuffing a tame left-footed effort towards goal that Adrian somehow allowed to squirm through his grasp and into the net.
Three minutes later the turnaround was complete when Walcott headed home Podolski's left-wing cross to make it four goals in his last three matches.
Adrian rushed from his line to deny Podolski two minutes later, but the Germany international was not to be denied a goal as he lashed home a first-time effort to seal Arsenal's fifth win six visits to Upton Park.
Get the best features, fun and footballing frolics straight to your inbox every week.
Thank you for signing up to Four Four Two. You will receive a verification email shortly.
There was a problem. Please refresh the page and try again.