In 30+ hours of dawnguard gameplay, I've only been attacked in a city by vampires twice. I travel to cities often, but I never fast travel, the problem pretty much goes away if you don't fast travel.
You could try fast travelling to a nearby location, the stable might be sufficient.
I don't fast travel at all, I still get repeated attacks...as a vampire lord!!!
Belethor is not classed as an essential NPC. And they all head for bed when you arrive, so most will still be out, no matter what time you turn up.
If you ever stood around during the night time you would notice that they DO NOT HEAD FOR BED WHEN YOU ARRIVE!
Amren constantly wanders the streets of Whiterun at night, and is the most likely to rush into a battle at the gates at night time. Most NPCs end up going to the tavern, and leave at differing times. Belethor tends to make a round of the city at around 9pm, and his first stop is the gate. Ysolda usually leaves the tavern around 2am, but does not get close to the gate (at least as far as I can tell) and will not die unless the vampires spawn near the tavern or kill everyone at the gate and rush the tavern. Adrienne exits Warmaiden's around 5am, and is subject to being the first death from any attack that comes from the gate at that time. She also makes a round of the city before finally entering Warmaiden's to sleep around 8pm (if I remember correctly).