London is a much older city than most, so hotels tend to be in historic buildings, or squeezed in between buildings, so standard rooms are not very big. It occurs to me that if you do not care about food and public areas too much then maybe you should opt for a serviced apartment.
£300 a day for a room in London is very low - it's an expensive city!
I agree with most that the Firmdale Hotels are by far the best option.
Soho Hotel is in a very central location. You can walk one way into Charing Cross Road, or the other way into Oxford Street.
Do not, however, expect to be able to walk around Lonodn and see ALL the sights. It's a big, spread-out city, so you will need to take cabs or the underground to, say, Tower Bridge/Tower of London, London Eye, King's Road, Chelsea etc etc etc.