One place to start is to make a formal complaint to Ofcom.
If you want to terminate your contract for non compliance by BT you first need to collect detailed evidence - 'hearsay' won't do - then you have to compare what is against what was promised and give BT notice in writing that you wish to have the service contracted for delivered.
If you can then demonstrate that they are unreasonably refusing to deliver the contracted service (and that there is no 'small print' that lets them get away with it) you can sue for what you have paid and to have the service terminated without penalty . . .
Then you can sign up with another ISP and find that they fail to deliver in one way or another . . . One of my brothers was until recently Chairman of an ISP and he was going hariless over the gap between services promised and what was delivered in the entire industry.
Much of the problem is that the 'wholesale' promises are not delivered by 'guess who'? That means that when you sign up with someone else they are often reliant on BT or another carrier who then fails to deliver . . . It's a mess. Look at the performance charts and try to find someone consistently in the top five then move to within half a mile of Docklands or another major node and you might get a service . . .
Good luck, Funforus