There is no way it's 25%, that's utter rubbish.
I've had around 4-5 attacks in my hours of dawnguard, I've entered a town a hell of a lot more than 20 times.
Fast traveling seems key, if you don't fast travel (me) you simply don't get attacked, it's incredibly rare.
Or you have been extremely lucky where others have not and I wouldn't just dismiss it without researching it yourself. One could make themselves look rather foolish doing so.
Also If it is a % chance. How hard is it just to implement something to change it to a different percentage? For example, have a guard or vampire (depending on who you join) stationed near each city/town with dialogue options such as..
What would you have us do? (vampire/dawnguard)
Launch full scale attack/Take a break (75/100% attacks happen)
Raid for Cattle/Keepwatch (25%)
Bide time/Go on full alert! (0%)
That would keep everyone happy.