Here is an alternative proof that no maximal abelian subgroup of $S_\omega$ can have cardinality strictly between $\aleph_0$ and $2^{\aleph_0}$.

Consider the standard product topology that makes $S_\omega$ a Polish group. For any subgroup $G\le S_\omega$, the centralizer $C(G)=\{h\in S_\omega:\forall g\in G\,gh=hg\}$ is closed, because if $h$ does not commute with some $g\in G$, this can be witnessed by finitely many values of $h$. This implies $|C(G)|\le\aleph_0$ or $|C(G)|=2^{\aleph_0}$ by the Cantor–Bendixson theorem.

Now, if $G\le S_\omega$ is a maximal abelian subgroup, then $G=C(G)$: on the one hand, $G\le C(G)$ as $G$ is abelian. On the other hand, if $G\lneq C(G)$, we can fix $h\in C(G)\smallsetminus G$; then the subgroup generated by $G\cup\{h\}$ is abelian, contradicting the maximality of $G$. Thus, $|G|\le\aleph_0$ or $|G|=2^{\aleph_0}$ by the previous paragraph.

This argument applies to any Polish group in place of $S_\omega$.