You can downsize your program using the automatic _INFILE_ variable that contains the line that is being read from the external file once the INPUT statement is executed.
So everything can be done into a single Data step, without writing into a SAS dataset :
data _NULL_ ;
* LOAD IN HTML TEMPLATE */
infile 'C:\Folder\File.htm' LINESIZE=32000 TRUNCOVER ;
input ;
/* REPLACE TEXT */
rx=rxparse("'[_Fullname_]' to '&Fullname'") ;
call rxchange(rx,1,_infile_,_infile_) ;
/* EXPORT */
file "C:\Folder\Output.htm" ;
put _infile_ ;
run ;
As well as being prettier and shorter to write, this will same you time if your input file is long.
Regards,
Olivier