Is there another proof of the statement in the title without using transfinite recursion?
Here is my proof:
Let $X$ be a metric space such that every subset $A$ with $A\cap A'=\emptyset$ is countable. Let $B(p,r)$ be the open ball with center $p$ and radius $r$. Let $\omega_1$ be the first uncountable ordinal.
For every $\delta>0$, if there is no countable subset $A$ such that $X=\bigcup_{a\in A} B(a,\delta)$, then we can do the following procedure: for every ordinal $\alpha<\omega_1$, if we chose $(a_i)_{i<\alpha}$, then $\alpha$ is countable, so $X\neq\bigcup_{i<\alpha} B(a_i,\delta)$, so we can choose a $a_\alpha\in(\bigcup_{i<\alpha} B(a_i,\delta))^c$; thus we obtain a transfinite sequence $(a_i)_{i<\omega_1}$ such that for every $i<\omega_1$ and $j<\omega_1$ with $i\neq j$ we have $d(a_i,a_j)\geq\delta$; so if we let $A=\{a_i:i<\omega_1\}$, then $A$ is uncountable and $A\cap A'=\emptyset$, contradicting our hypothesis.
Thus for every $n\geq1$ there is a countable set $A_n$ such that $X=\bigcup_{a\in A_n}B(a,1/n)$. For every open set $U$ and for every $p\in U$, there is an $\epsilon>0$ such that $B(p,\epsilon)\subseteq U$, and there is an $n\geq 1$ such that $1/n<\epsilon/2$, and there is an $a\in A_n$ such that $p\in B(a,1/n)$, so for every $x\in B(a,1/n)$ we have $d(p,x)\leq d(p,a)+d(a,x)<2/n<\epsilon$; so $p\in B(a,1/n)\subseteq B(p,\epsilon)\subseteq U$. Therefore, $\mathcal{B}=\{B(a,1/n):n\geq 1, a\in A_n\}$ is a countable basis.
You can do essentially the same proof but with Zorn's lemma (this is a bit of a cheat, as Zorn's lemma is essentially a transfinite recursion).
Indeed let $\delta >0$ and let $\Omega= \{A\subset X \mid A$ is countable and $ \forall a, b\in A, a\neq b \implies d(a,b) \geq \delta \}$ ordered by inclusion.
Let $\mathcal{C}$ be a chain in $\Omega$, and let $B = \bigcup\mathcal{C}$. Then elements of $B$ are at least $\delta$ apart, so that $B' \cap B = \emptyset$, and therefore $B$ is countable : $B\in \Omega$ so $B$ is an upper bound of $\mathcal{C}$, and therefore $\Omega$ is inductive: let $C$ be a maximal element. Then if $x \in X$, either $x\in C$, or $x\notin C$. In the second case $C\neq C\cup \{x\}$, $C\cup \{x\}$ is countable : by maximality, there is $b\in C, d(b,x)< \delta$.
Therefore $X\subset \displaystyle\bigcup_{c\in C}B(c, \delta)$, and $C$ is countable.
This recreates the first part of your proof, the transfinite induction one, and then one can proceed with the rest of your proof. I wonder if there's a proof with essentially no transfinite induction.