Webber stayed out in front to claim his second victory of the Formula One season for Red Bull and trim Alonso's lead in the championship over him to 13 points.
"Fernando is a wily old fox, I thought he was looking after the tires and just waiting to pull the pin and go a little bit," Webber said. "But when I got within two seconds I thought maybe he's in a little bit of trouble and it was real.
"It was completely game on when I knew the DRS (drag reduction system) was available, I made the move stick and our hard work paid off for the win."
The victory leaves Webber and Alonso as the only drivers to win more than once in this unpredictable season, with two victories each.
"I'm very proud of the Ferrari recovery in the last few weeks and now we are fighting for the victory in the last three or four grands prix. So we're heading in the right direction," said Alonso, who won the European GP two weeks ago. "We were controlling the race more or less OK until the last stint, we were now quick enough and when Mark arrived I think he overtook very easy and there was nothing we can do."
It was the second time in three years that Webber has triumphed at Silverstone. The Australian driver lives nearby and he says staying at home aids his performance.
"There is that extra little bit that makes you a little bit more relaxed and a bit more comfortable," the Australian said.
The conditions also helped, with sunny spells at the central England circuit after two days of rain that caused chaos on and off the track for practice and qualifying.
Webber upstaged world champion teammate Sebastian Vettel, who held off Ferrari's Felipe Massa to finish third.
"Sebastian knows in Mark he has a very genuine competitor," Red Bull team principal Christian Horner said. "And Mark knows Sebastian has been the benchmark for the last couple of years."
Now, though, it is Webber setting the pace, 16 points ahead of his teammate in the standings as he starts to negotiate a new deal.
"I'm pushing to get a contract for next year," Webber said. "(It's) going reasonably well, got a few points, a couple of wins and I will work very hard to try and stay in Formula One next year."
It was a disappointing day for the leading British drivers as Lewis Hamilton and Jenson Button failed to make the podium.
Hamilton, who is fourth in the drivers' standings, finished eighth and McLaren teammate Button was two places behind but just inside the points after starting from 16th.
Hamilton had taken the lead after starting on hard tires as rivals stopped to pit earlier than him, but pole-sitter Alonso easily caught him.
"It's hard to understand how we could be leading the race at one point and then fall back to eighth place, especially as our car doesn't feel bad overall," the 2008 world champion said. "I raced my heart out and was flat-out right to the end. We're still in the hunt for the world championship."
Michael Schumacher had started from third, but failed to make the podium for the second successive race as he finished seventh.
Sauber was fortunate to avoid a more serious calamity when Kamui Kobayashi braked late while pitting on lap 37 and hit several members of his pit crew.
The Japanese driver was fined €25,000 ($31,000). Two mechanics were taken to the circuit medical centre — one with an injured thumb and another with "cuts and bruises — while a third was treated for a bruised foot in the Sauber garage.
"(It) was my fault and I want to apologize to the team," said Kobayashi, who finished 11th.
Sauber was in the spotlight earlier in the race when Sergio Perez collided with Pastor Maldonado of Williams on lap 12 and was forced to retire after spinning off the track.
The race stewards gave Maldonado a €10,000 ($12,300) fine after the incident, which led to Perez accusing the Venezuelan of being a "very dangerous driver."
"He didn't give me any room," Perez said. "He has no respect for other drivers."
Rob Harris can be reached at http://twitter.com/RobHarris