Without seeing your source document I can't tell where the semicolons are coming from so I can't tell you how to get rid of them. (In fact I can't tell where the fruit names are coming from either.) You haven't even shown the code that declares the variables such as $fieldtype - there's simply nothing to go on here.
A couple of comments:
(1) <xsl:if test="$fieldtitle"></xsl:if>
An empty xsl:if is legal but totally useless.
You almost certainly don't want to be doing that. It's a low-level feature for advanced users only, and it makes your stylesheet less portable.
Author, XSLT Programmer's Reference and XPath 2.0 Programmer's Reference