I dispensed with using the decimal 9 in your code.  I also got into my editor and hard-coded a tab character while having "DISPLAY FUNCTIONS" on.  My editor was QUAD.  Without showing it, there is supposed to be an "HT" between the quotes on the definition of D-TAB-A, thus:

SET NOHEAD
SET REPORT SPACING 0
DEF D-TAB-A CHAR*1 = ""
DEF A CHAR*5 = "HELLO"
DEF B CHAR*5 = "THERE"
REP A D-TAB-A B D-TAB-A A D-TAB-A B
GO

In addition, I ran the report with "DISPLAY FUNCTIONS" on so I could see the small "HT" between HELLO and THERE.