The advantages of HTML 5 are the ability to use new tags, more expressive and meaningful than
<div>s, and to benefit from a few features added in HTML 5, like better support for forms (with validation of fields, etc.).
Note that you are not forced to use HTML 5 in order to use:
styles available in CSS 3, like gradients. You can use CSS 3 with older versions of HTML as well.
XHTML was published in 2000 to replace HTML by introducing stricter rules. The goal was to make it easier for smartphones and especially mobile phones to parse XHTML code with sparse hardware resources, given that an XML parser is easier to develop compared to an HTML parser (factor which can benefit both the usage on low-end hardware and the adoption of such parser in new programming languages and frameworks).
This attempt failed for a few reasons:
Today's iPhone is ways more powerful than a quite expensive desktop PC you were able to buy in 1999. Smartphones are now capable to parse HTML, including non-W3C-compliant HTML, fast enough.
Not everyone wrote valid XHTML code. In practice, most people just changed the headers, while keeping the legacy invalid, crappy HTML 4 full of
Severe issues caused by, on one side, the misunderstanding of the appropriate HTTP headers to use when sending XHTML, and on the other side, the terrible behavior of some well-known browser when it came to recognizing XHTML, made the adoption of XHTML difficult.
One of the advantages of XHTML compared to HTML 4 was the fact that a valid XHTML code was also a valid XML. This made it possible to somehow use XHTML as XML to extract data programmatically from the web page. This scenario is infrequent and I can't even find a good example where such thing would be used, instead of requesting/sending the raw model directly as JSON or XML.
This advantage doesn't exist any longer, since HTML 5 can be generated as a valid XML code¹.
Another minor advantage was to be able to use XML features, like namespaces. I don't recall any situation where namespaces in XHTML were particularly useful and where it would have been particularly difficult to find a workaround in HTML.
The advantage of HTML 4 is that you're sure that even very old browsers support it.
This advantage is very limited:
If we talk about perfect support of the standard, then Internet Explorer is out of the game: no matter what HTML version you chose, IE6 and IE7 will have their own understanding of the standard.
If we talk about the ability, for the browser, to actually understand and display the web page, any modern and no so modern browser will succeed displaying any low-quality (X)HTML, no matter its version.
Want a proof? The following code displays perfectly well, even if nobody have any idea about the version of (X)HTML actually used:
<p>Guess, what is the HTML version used in this ugly code?
In essence, you may use whatever you want. Given your specific requirements, i.e.:
Support of legacy browsers,
Ability to use Epub later,
you may use whatever you want. In your case, you don't benefit from any of the versions in particular and any version will fit your needs. The choice would be dictated by:
your personal preferences,
and, eventually, reasons which are unrelated to the project. For example, if you lack HTML 5 keyword on your CV, this may be a reason to pick HTML 5.
Overall XHTML appeals to me the most, but I'm scared about the implication of its use. It has supposedly been discontinued by W3C in favor of HTML 5.
What do you mean by "discontinued"?
HTML 5 has currently a status of Candidate Recommendation, not a W3C Recommendation (REC).
XHTML 1.1 is a W3C Recommendation since 2001.
HTML 4.01 is a W3C Recommendation since 1999.
Both HTML 4 and XHTML 1.1 are perfectly valid choices from the point of view of the standards. Both HTML 4 and XHTML 1.1 are widely used by the web industry.
¹ “The other syntax that can be used for HTML5 is XML. This syntax is compatible with XHTML1 documents and implementations.” Source: W3C working draft HTML5 differences from HTML4.