
The only way to avoid this glitch is to call SetSize(...) in the Init method of the custom HUD class, which is apparently used to set the virtual dimensions of the status bar area. Calling Super.Draw(), BeginStatusBar(), BeginHUD() and other things like that does not seem to have any effect on this.
The only workaround that removes the glitch, if I don't want an empty status bar to appear, seems to be to call SetSize(0, 0, 0). However, do note that the only time the glitch appears is when the value of the "screenblocks" CVAR is less than or equal to 10 BEFORE the level is started. Changing the value in-game will remove the glitch, and it will not reappear later (until the next level) no matter what other values screenblocks is set to afterwards. Because of such inconsistent behavior, I believe this is actually a bug and not a user error. Besides, why should I be concerned with calling status bar related stuff if I only want the fullscreen HUD?...
Test WAD attached. Tested in GZDoom 4.2.4a and g4.3pre-317-g48d0ebab5.