Presumably, your $row_email_body['email1_body'] is being set on the previous page? Hard to tell, since you only posted a snippet of the code, and you reference passing the variable in a hidden field.
That being the case, you need to define your $body variable from the POST array like below:
$top = "<br>";
// Change the Array key name to wahtever the hidden element's name is
$body = $_POST['row_email_body'];
$bottom = "<br>";
$from = "Competition";
// set parameters
$recipient = $HTTP_POST_VARS["email"];
$subject = "Competition";
$message = $top . $body . $bottom;
In other words, if your hidden field looks something like this:
<input type="hidden" name="[b]email_content[/b]" value="<?php echo $row_email_body['email1_body']; ?>">
Then your $body variable would look something like this (Note the part in bold above):
$body = $_POST['email_content'];
Sorry to change the name around, hope I don't confuse you, but I figured if I changed the name, it would make more sense so you'd know what to associate with what.
If I am off base with my thoughts, then let me know, and post more code, so we can better decipher how you are defining your variables.