The influence of the media is strong, but it hasn’t been around for that long. Compare that to the hundreds of years local communities have had to build up their own accents. The same probably applies in other countries with other languages, but, as foreigners, we don’t notice them as much.
There is also be less internal migration, like Gorillaman said. I once searched for my surname on probably the same website he used. My surname seems pretty common, but it turns out that almost all of us are in London, South Essex, or North Kent. Now, my family is very fertile, but we can’t account for all of them! It was pretty much like searching for ‘Woods’ and finding them all within a fifty mile radius of you.
Perhaps it’s because you don’t usually need to move all that far here. Hell, the distance between blocks in the US is sometimes more than the distance between towns in the UK, IME. Visiting there was an eye-opener as to why the car is such a mainstay in American culture. I have known a few people on my hometown - twenty miles from the centre of London - who’d never left the town at all. Not even to go to London. They felt no need to.
I have slight issues with using the term RP or BBC English for the kind of accent Tony Blair has. RP applies to the Queen, but his accent is hugely different to the Queen’s. I speak like Tony Blair, but I don’t speak like the Queen at all.
The reason it’s also called BBC English is that, in times past, you had to have that accent if you work for the BBC in any role but the gaffer, pretty much. You also needed that to be in any senior professional job, like a lawyer. That is not so much the case now.
It depends where you’re from, though; speak with a strong Cockney, Brum or Bristol accent and you won’t be taken as seriously in s ome of those professional jobs. Be Welsh, Liverpudlian or - sometimes - Georgie or Yorkshire - and you’ll get away with it. Although you still have to ‘soften’ your accent then (but that’s partly about comprehensibilty, not just snobbery). However, you can get a job as TV presenter with any accent at all now - softened down.
The ‘new RP’ is somewhat of a mix between RP and Estuary. It’s like speaking according to a dictionary but occasionally dropping a t.
Tony Blair probably started his accent off by being posh and going to posh boarding schools, btw. When he was a kid, he won’t have spoken like he was Scottish or from Durham. He’s also softened his posh accent down a bit.