This is not quite as simple as JDH's solution, but I think it is more elementary, and I put so much thought into it that I think it will be a waste not to write it down. I hope it's correct...
First, notice the following simple fact:
Suppose that we have a sequence $\alpha_i$, $i<\omega$ of countable ordinal numbers, such that there is a procedure which, given $\alpha_i,\alpha_{i+1}$, and an enumeration of $\alpha_i$, yields a unique enumeration of $\alpha_{i+1}$. Then $\bigcup_{i<\omega}\alpha_i$ is countable.
This is true because we can just fix an enumeration of $\alpha_0$, and then uniquely define enumerations of all other $\alpha_j$s, leaving the remaining proof straightforward.
As per JDH's answer, for countable $\alpha$ we have that $\omega^\alpha$ can be defined as the order type of the set of functions from $\alpha$ to $\omega$ of finite support with lexicographic ordering. In particular, for countable $\alpha$, $\omega^\alpha$ is countable.
From this we have the lemma:
There is a procedure which, given arbitrary countable ordinal $\alpha$ and an enumeration of $\alpha$, yields an unique enumeration of $\omega^\alpha$.
Proof:
- Fix a bijection $\varphi:\omega^\omega\to \omega$.
- Suppose we have an ordinal $\alpha$ and a fixed, bijective enumeration $\eta$ of $\alpha$.
- Put $A=\{f:\alpha\to \omega\vert f\textrm{ finitely supported}\}$, and $h:\omega^{\alpha}\to A$ the canonical bijection.
- Then define $\overline{\eta}:A\to \omega^\omega$ by $f\mapsto f\circ \eta^{-1}$.
- Then $h\circ \overline \eta\circ\varphi$ is a bijection between $\omega^\alpha$ and $\omega$.
From this and the above fact we can derive the following corollary:
Let $\alpha$ be a countable ordinal, and define $\alpha_0=\alpha$, $\alpha_{j+1}=\omega^{\alpha_j}$. Then $\bigcup_{j<\omega}\alpha_j$ is countable.
Proof: From the lemma the sequence $\alpha_j$ satisfies the hypotheses of the fact, so we're done.
From this, we can easily see that for $\alpha=\omega$ we get that $\varepsilon_0$ is countable, and for countable $\alpha=\varepsilon_j+1$ we get that $\varepsilon_{j+1}$ is countable.
I suppose this can probably be somehow generalized to jump through limit indices...
Edit for generalization: The first fact stated at the beginning of the answer can be somewhat generalized. Instead of $\omega$, $\alpha_i$ can be indexed by arbitrary countable ordinal, and the procedure can take instead a sequence $f_i$ of enumerations of all preceding elements of the $\alpha_i$ sequence, and it will be true for pretty much the same reasons.
Now, to prove that all countable-indexed $\varepsilon$ numbers are countable, we need only the following fact:
Suppose $\gamma$ is a countable limit ordinal, and for each $\alpha<\gamma$, $\varepsilon_\alpha$ is countable. Then there exists a procedure which, given a nonzero $\beta\leq \gamma$ and a sequence $f_\alpha$ enumerations of respective $\varepsilon_\alpha$ for $\alpha<\beta$, yields a unique enumeration $f_\beta$ of $\varepsilon_\beta$.
Proof
- Fix an enumeration $\Gamma$ of $\gamma$, and a bijection $\Omega:\omega\times\omega\to\omega$, and another $\varphi:\omega^\omega\to\omega$.
- Choose arbitrary nonzero $\beta\leq\gamma$ and a sequence of enumerations $f_\alpha:\varepsilon_\alpha\to \omega$.
If $\beta$ is a successor:
- Put $\eta:\varepsilon_{\beta-1}+1\to\omega$ defined by $\eta(\varepsilon_{\beta-1})=0$, $\eta(\alpha)=f_{\beta-1}(\alpha)+1$ for $\alpha<\varepsilon_{\beta-1}$.
- Construct a sequence $\alpha_0=\varepsilon_{\beta-1}+1,\alpha_{j+1}=\omega^{\alpha_j},j<\omega$, along with a sequence of enumerations $\eta_j:\alpha_j\to\omega$ as described in the first lemma, using $\varphi$ fixed above.
- Then, put $g_1:\varepsilon_\beta\to\bigsqcup_{i<\omega} \alpha_i\subseteq \omega \times \varepsilon_\beta$ defined by $g_1(x)=(n_x,x)$ where $n_x$ is the least number $n$ such that $x\in \alpha_n$
- Put $g_2:\bigsqcup_{i<\omega} \alpha_i\to \omega\times\omega$ defined by $g_2(n,x)=(n,\eta_n(x))$.
- Then $\Omega\circ g_2\circ g_1:\varepsilon_\beta\to\omega$ is injective and we're done.
If $\beta$ is limit:
- put $h_1:\varepsilon_\beta \to \bigsqcup_{\alpha<\beta} \varepsilon_\alpha\subseteq \beta \times \varepsilon_\beta$ defined by $h_1(x)=(\zeta_x,x)$ where $\zeta_x$ is the least $\zeta$ such that $x\in \varepsilon_\zeta$.
- Put $h_2:\bigsqcup_{\alpha<\beta} \varepsilon_\alpha\to \omega\times \omega$ defined by $h_2(\zeta,x)=(\Gamma(\zeta),f_\zeta(x))$.
- Then $\Omega\circ h_2\circ h_1:\varepsilon_\beta\to \omega$ is injective and we're done.
This should, with small modifications, show that $\lvert \varepsilon_\alpha\rvert=\lvert \alpha\rvert+\aleph_0$