Charles Leclerc clinched his first win in two years at the British Grand Prix, overcoming tyre challenges and a late Safety Car to secure victory at Silverstone.