Yeah, I didn't notice it either, until I made hitpoints the primary city defense, then I wondered why that 800 hp beast went down in one turn and realized it had only 100 hp.
Can be fixed via lua though, by running a script that removes and re-adds all buildings with HP-bonuses attached to them at the beginning of each turn - possibly restricted to cities with full hp only, because the current hp seem to reset to 100 every turn even if the city was below that.
That solution is of course restricted to buildings that don't grant free units/resources etc. after completion.