With only two nights in London it would be sensible to stay somewhere near St Pancras station where you Eurostar leaves from. There are accommodations at all price points from the simple but highly regarded Premier Inns (3 within walking distance) all the way to the St Pancras Renaissance - a restoration of the Victorian hotel on top of the station, which is beautiful. You can get to St Pancras directly from Heathrow on the Piccadilly tube line or from Gatwick on a Thameslink train.
What are the best sights are a very personal thing dependant on your interests so it's difficult to be definitive. But from reading many other plans most people would have the Tower of London, the British Museum and Westminster Abbey up there.
Hon Hop Off buses are an excellent way to get an overview of many cities but London is definitely not one of them. The traffic is central London is horrendous, the HOHO buses are not allowed to use the many bus lanes, the routes are not allowed to pass some tourist sites and if you get off to see somewhere it might be a long time before you can get back on another. You can use regular service buses which are quicker to get around and only cost £1.75pp, take a cruise on the Rover Thames which passes many iconic sights or just walk around Westminster or along the South Bank to Tower Bridge.
Again it's difficult to recommend places to eat without knowing your tastes or budget - Michelin Star, traditional British or a cuisine from elsewhere (most are represented in London)? South Asian cuisine is particularly strong given former Empire links.