XSLT is designed to work inside XML documents (such as XHTML) for exactly this purpose. In your case, you should use the "xsl:attribute" element as in the example below, instead of placing the XSL directly inside the 'href' attribute
<td><a><xsl:attribute name="href"><xsl:value-of select="Email" /></xsl:attribute> ... (the rest of your XSLT looks fine) ... </a></td>
The xsl:attribute element executes the XSLT elements within it and puts the value into the attribute specified by "name" of the parent (in this case the "<a>" element).
You might want to do some google searching for XSLT tips, I'm not an expert but its a really powerful language.