Perl 4 is dead. An ampersand in front of the function name does something very different in Perl 5 than it did in Perl 4, and usually you do not want that. Get rid of the ampersands.
Your code lacks a lot of error checks.
Why all that line noise in the comments? It makes the code only harder to read.
"close file" before/after a close(HANDLE) is an excellent example for a stupid, useless comment. And there are more examples of this in the code. Comment what is not obvious to the reader, don't repeat the code in english in comments.
What's the purpose of the chmod after closing the file? Neither open nor close should mess with the file's mode.
use CGI::Carp qw/fatalsToBrowser/; exposes information about your script and your environment to an attacker. Remove that from production code.
die "Error 5643: can't print to <br><b>$Results_Path</b><br>$!<hr>"; should not contain HTML.
The hardcoded error number in there is just nonsense, drop it.
The same applies to the other error messages.
Warning_One is a good example for a stupid function name. Does it warn you of a big cat-killing digit 1? Nope! So, name the function according to what it does.
Are you aware that Warning_One exits your script before the emitted HTML is complete? It does not even close or unlock the working file.
In the error message, you expose the name of the file written to an attacker.
The emitted HTML lacks a charset declaration.
The emitted HTML does not end after </html>
The emitted HTML uses obsolete constructs like the attributes in <body>, inline CSS, the B element. Use an external stylesheet and semantic HTML.
You mix code and HTML. Consider using a template instead.
You don't use the three-argument form of open.
You interpolate uselessly, e.g. in chmod (0666, "$Results_Path")
There are more problems with your code, but this list is already too long.
Alexander
--
Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so". ;-)