Let $F$ be a countable dense subset of $E'$. By Hahn-Banach theorem, we need to find a countable subset $D$ of $E$ such that $$\forall f \in E' \big [ f \restriction \operatorname{span}_\mathbb R D \equiv 0 \implies f \equiv 0 \big ].$$
Clearly, $\operatorname{span}_\mathbb R D$ is a vector subspace of $E$. If $D$ satisfies above condition, then $\overline{\operatorname{span}_\mathbb R D} = E$. Clearly, $\overline{\operatorname{span}_\mathbb Q D} = \operatorname{span}_\mathbb R D$ and thus $\overline{\operatorname{span}_\mathbb Q D} = E$. Moreover, $\overline{\operatorname{span}_\mathbb Q D}$ is also countable.
Let's characterize $D$. Fix $f\in E'$ such that $f \restriction \operatorname{span}_\mathbb R D \equiv 0$. There is a sequence $(f_n)$ in $F$ such that $f_n \to f$. We have
$$
\sup_{x \text{ s.t. } |x|=1} \langle f_n-f, x \rangle = \|f_n-f\| \to 0.
$$
The hypothesis $f \restriction \operatorname{span}_\mathbb R D \equiv 0$ implies $f \restriction D \equiv 0$. It follows that
$$
\sup_{x \in D \text{ s.t. } |x|=1} \langle f_n, x \rangle \to 0.
$$
It suffices that $f_n \to 0$ or equivalently $\|f_n\| \to 0$. This suggests us a "bound"
$$
\|f_n\| \le\sup_{x \in D \text{ s.t. } |x|=1} \langle f_n, x \rangle.
$$
This "bound" maybe too strong to be true, but a weaker bound (by a positive constant $\alpha <1$) is enough for our goal, i.e.,
$$
\alpha\|f_n\| \le\sup_{x \in D \text{ s.t. } |x|=1} \langle f_n, x \rangle.
$$
For this inequality to hold, it suffices that for each $n$, there is $x_n \in D$ such that $|x_n|=1$ and
$$
\alpha\|f_n\| \le \langle f_n, x_n \rangle.
$$
Such pick of $x_n$ is possible due to $\alpha \in (0, 1)$. This completes the proof.