I never had any problems with roof/fence intersections. In fact, with balconies like this one that border directly on a roof, I tend to place (invisible) fences inside the roof to stop sims from walking through it because it doesn't technically have collision (which has never actually happened to me before, but we all know what this game is like). But anyway, turning MOO on or using the enablefreebuild cheat didn't help, unfortunately.
I found out there's two ways to enter a residential rental lot in Build Mode from the world map: One that lets you edit only one selected unit, and one that lets you edit the lot as a whole. The former method is the same as switching from Live Mode to Build Mode (i.e. useless in this case), the latter finally let me correct the roof and make the balcony more spacious. Unfortunately I couldn't assign any new space to the unit because it's occupied, but the occupants are the only ones who can get there by normal means, so it's fine for now. It still bothers me a little and I think there should be a cheat for that.