Either build createHTML.pl as a normal script accepting normal arguments, or use CGI.pm and use it as a CGI script. Be advised that you'll probably end up printing two sets of CGI headers doing this, though (at least how your code is set up now). I have no idea what &ReadParse is (some cgi-lib.pl thing?), so I can't tell how it's attempting to parse your command line. I suspect
CGI.pm will pick it up fine (and if not, try adding the -debug option to the 'use' option list for CGI).
If you're going to be doing a lot of this type of thing, you might be better off turning createHTML.pl into a module, and 'use'ing that module in this script, and a new, simplified createHTML.pl script. That would let you avoid having to spawn off new Perl scripts to do additional processing.