The decision meant that after the final pit stops Alonso was on the soft tyre and Webber on the hards, which turned out to be the better race tyre.
Webber closed a four-second deficit in eight laps and Alonso was helpless to fend off the Red Bull as Webber passed him around the outside of the Brooklands corner at the end of the DRS overtaking zone.
The Australian became after Alonso only the second driver to win two races this season.
He said: "I've had a few [wins], but this one is taking a little bit to sink in. It didn't look like a spectacular race between us initially, but it was one - pacing the stints on the tyres, Fernando starting on the harder tyre...
"After the first stint Fernando had I thought he was in good shape to close the win out. But it came our way and I am absolutely over the moon, absolutely rapt.
"I had a single opportunity to pounce and I wasn't going to let that slip. Fernando, with the front-left tyre, if you lose balance around this place, the speed is very high in that [second] sector and it's very hard for the driver to do something.
British GP 2012: Mark Webber 'very proud' after 'special' win
"It was obvious he was pushing as hard as possible but the balance wasn't with him."
Alonso said: "The victory was quite close today, but Mark was much quicker in the last laps and he deserves the victory. But I am very proud of the progress Ferrari have made in the last few weeks and we are now fighting for victories in the last few races."
The threatened rain never came, and the race took place in sunshine.
As Alonso and Webber battled at the front, Vettel, who slipped back from fourth on the grid to fifth behind Massa on the first lap, made use of an early first pit stop to pass the Brazilian.
Nevertheless, it was Massa's most impressive race for some time, and it was a timely performance as Ferrari consider who will partner Alonso at the team next year.
The Lotus drivers Kimi Raikkonen and Romain Grosjean were fifth and sixth, while Michael Schumacher, whose Mercedes faded from its third-place grid slot, passed Hamilton in the closing laps to take seventh.
Williams driver Bruno Senna and Button took the final points places.
This page is best viewed in an up-to-date web browser with style sheets (CSS) enabled. While you will be able to view the content of this page in your current browser, you will not be able to get the full visual experience. Please consider upgrading your browser software or enabling style sheets (CSS) if you are able to do so.