First:
Use str_replace(), it's far less intensive (cpu-wise)compared to ereg_replace()
Second:
Switch your GD account to PHP5 - no reason at all to continue with PHP4.x. You can do that in your control panel under Languages
I tried your code on my own test site with GD and had no problems.
Some changes:
$optional_comment2 = str_replace("\\\'","'",$optional_comment2); //Where are you getting the triple \'s from?
$optional_comment2 = str_replace("\n","<br />\n",$optional_comment2);
$optional_comment2 = str_replace('"',""",$optional_comment2);