Yes, sessions variables are domain specific, so if you are moving between domain, you wont be able to use a session variable for the email.
You could pass the email address in a form from the subdomain to the main domain.
create a form like:
<form id="form1" name="form1" method="post" action="http://www.mydomain.com/contact.php">
<input type="hidden" name="email" id="email" value="<?php echo(isset($_SESSION['email'])?$_SESSION['email']:""); ?>"/>
<input type="submit" name="button" id="button" value="Submit" />
</form>
Then in the contact form on the contact page, create a new hidden form element named "email" to capture the value from the form:
<input name="email" type="hidden" id="email" value="<?php echo((isset($_POST["email"]))?$_POST["email"]:"") ?>"/>
and in univerwsal email, use the email form element.