The win, Hamilton's seventh from 10 rounds, takes the Briton ever closer to a sixth world title. He is now 39 points clear of Bottas in the championship standings.
On a sensational day for Hamilton, the Englishman also secured a bonus point by posting a stunning track record on his final lap.
Red Bull driver Verstappen managed to finish fifth, but Vettel dropped to 16th with the damage sustained in the incident.
The Ferrari driver was also hit with a 10-second penalty for causing the collision.
Lando Norris crossed the line a disappointing 11th on his maiden home event, the British teenager's race scuppered by strategy.
For Hamilton, his stroke of luck arrived on lap 20 of the 52-lap race when Antonio Giovinazzi beached his Alfa Romeo at Brooklands.
Out came the safety car, and in came Hamilton for his one and only stop.
Bottas had already pitted, and with the field driving slowly, Hamilton was able to nip in for fresh tyres to retain his lead.
The Englishman crossed the line 25 seconds clear of Bottas, surpassing Britain's double world champion Jim Clark and the Frenchman Alain Prost as the standalone master of his home race.
"What a day, I love you Silverstone," said Hamilton on his warm-down lap.
"I can't tell you how proud I am to be here today in front of my home crowd, and my family, too," said Hamilton with a Union Jack draped over his shoulders following his 80th career win.
"You would think you would get used to something like that but it feels like the first time."
Earlier, Hamilton and Bottas had exchanged blows in a thrilling race. With Bottas having retained his lead from pole, Hamilton spent the opening period hounding his team-mate.
On lap four, the team-mates went wheel-to-wheel through Brooklands, Luffield and then Copse with Hamilton assuming the lead only for Bottas to sweep back past. That is how it would remain until Hamilton's pit stop.
There was racing throughout the pack with Leclerc and Verstappen dicing for position. Verstappen beat Leclerc to victory last time out in Austria, and the pair thrilled the crowd here with another intense battle.
Leclerc would lose out following the safety car, but the young Monegasque managed to take the final podium spot after Vettel hit Verstappen with 15 laps to go.
Verstappen had just sailed round the outside of the Ferrari at Stowe, but, under braking for the ensuing corner, the flustered Vettel rear-ended Verstappen's Red Bull.
Verstappen was sent sideways across the gravel, with sparks flying from underneath his car. The Dutchman managed to rejoin the track but lost two places, while a red-faced Vettel was forced to pit for repairs, dropping way down the field.
"What the f***?," yelled Verstappen. "What was he doing?"
Vettel was then handed a penalty by the stewards, crossing the line a lap down in 16th. He is now 101 points behind Hamilton.
Red Bull driver Pierre Gasly finished fourth following an encouraging weekend for the young Frenchman. Carlos Sainz was sixth for McLaren ahead of Renault's Daniel Ricciardo. British novice George Russell took the chequered flag in a career-best 14th.
Join our new commenting forum
Join thought-provoking conversations, follow other Independent readers and see their replies