5-6 days for Hanoi alone is a bit much but you can include Halong bay (overnight trip) and maybe perfume river trip.
Re Bali, Ubud has hotels too but its not by the beach, being the capital. High end resorts are mostly in Nusa Dua and Jimbaran areas, away from the nightlife of Seminyak/Kuta. Other asian beach places are Phuket, Langkawi, Penang or Boracay. Take your pick!