I can chime in on where to stay.... at least the zone.
In general District VI. In particular (get a map) the area bordered by Teréz krt. (the outer loop road), Bajcsy-Zsilinszky út (the inner loop road), Dob utca (one of the roads that borders the Jewish Deportation Ghetto zone) and Ó utca (a block or so behind the Opera House). In the center of this area runs Andrassy ut and under Andrassy ut runs the M1 Metro. The area is also bordered by two Tram lines and between those three you can get anyplace in town. If you get a block away from Andrassy the town begins to get "real" very quickly.
In that zone I have stayed at the K&K Opera a number of times over the years and think its an excellent all around hotel; The Corinthia Hotel, a pretty amazing 5 star hotel and fairly good prices for 5 star service and accommodations; The Ambra Hotel, a pretty nice budget hotel (but the rooms are a bit small, but i like the location a lot cause its a few hundred feet from my favorite wine bar).
The one place you dont want to stay on your first trip in Buda; just too far from most of the things to see. I've stayed in a few hotels in Buda, but I will spare you. The second worst is District V. That's the tourist heart of Budapest and while you need to walk down Vaci street at least once, beyond that you just have to deal with all of the river boat tourists.
In Prague, I dont know how you could do better than the Ventana Hotel https://www.ventana-hotel.net/
In Vienna, well, well, okay I have stayed in two hotels in Vienna over the years; both well located one on, one just off the Kärntner Straße; both very forgettable. Sorry, cant help with that.