Walters stepped up in the 76th minute to slot home a spot-kick he had won when his flick struck the arm of Laurent Koscielny in the Gunners box.
The result, coupled with Chelsea's win at Fulham, means second-placed Arsenal are now four points adrift of the Blues with 10 top-flight matches left to play each.
Meanwhile, Manchester City in third are two points behind Arsenal with two games in hand.
Stoke were certainly good value for their victory, only their second in 11 Premier League fixtures, as they claimed another notable scalp for the season - following on from home triumphs against Chelsea and Manchester United - and once again proved to be Arsenal's bogey side.
Since the Potters were promoted to the top-flight in 2008, they have hosted Arsenal seven times and lost only once.
As this game got under way, there was plenty of noise being generated from the stands at the Britannia Stadium, with Potters captain Ryan Shawcross, four years after his tackle left Arsenal midfielder Aaron Ramsey with a broken leg, being booed by a section of away fans and some of their counterparts chanting about Gunners boss Arsene Wenger, who once suggested Stoke employ "rugby" tactics.
On the field, though, things were more serene, the match struggling to spark into life. Walters sent a header wide from a delightful Marko Arnautovic cross around the quarter-hour mark and saw the assistant referees' flag had been raised, before Santi Cazorla advanced to the edge of the box to fire Arsenal's first attempt on goal off-target.
Olivier Giroud failed to make the most of a whipped Kieran Gibbs delivery from the left as he went to meet it with his head, and Asmir Begovic then easily collected a nodded attempt from the France striker.
At the other end, a deflected Steven Nzonzi pass came to Peter Crouch, who shot into the side-netting, and Arsenal's response saw Lukas Podolski lash the ball wide having been fed by Mikel Arteta.
Perhaps as a sign of frustration, some fairly hefty challenges followed, one of which involved Giroud in a sandwich between Marc Wilson and Glenn Whelan. The incident resulted in a Stoke free-kick, although replays appeared to show that Whelan had stood on Giroud's ankle.
Whelan then brought a diving save out of Wojciech Szczesny just prior to the break with a swerving strike from the edge of the box, before Cazorla called Begovic into action by thumping a shot from similar range.
It was an encouraging way for the half to finish, and it was Stoke who looked to keep the tempo up in the early stages of the second period.
Nzonzi sent a tame header at Szczesny, who then made a hash of dealing with a Geoff Cameron cross, leading to a goalmouth scramble that Arsenal survived.
Crouch diverted the ball wide with a miscued acrobatic attempt and then stretched to get a harmless boot to a Charlie Adam free-kick that it seemed he would have been better attacking with a header.
Stoke continued to press and after Szczesny dived to turn a glanced Crouch header behind, the corner led to the ball dropping nicely for Cameron, but he could only poke wide.
The Potters were rewarded around 10 minutes later when Koscielny was adjudged to have handled the ball and Walters, putting past penalty misses behind him, made no mistake from the spot, prompting chants of "1-0 to the rugby team" from the Stoke faithful.
Mesut Ozil flashed a shot across Begovic's goal and his fellow Arsenal substitute Yaya Sanogo then struck over the bar as the Gunners - for whom Giroud, with his frequent tumbles to the turf, had turned into a pantomime villain - failed to find an equaliser.