Do you have a height variable for the raycaster? You could use that to change the GFILLs so that they move with the walls' bottom instead of a constant half-screen drawing.
L# is your height variable. Change the second and first Y values, respectively, in your GFILLs to be decreased by L#. If it seems to be inverted when testing, change them to increase by L# instead.
E.g.: Change the 199 in the first one like this...
GFILL 0,0,399,119-L#,RGB()
And the 120 in the second one like this...
GFILL 0,120-L#,399,239,RGB()