As your qiestion operates with $f(\partial D)$, I assume that $f$ is continuous in
$\overline{D}$, though you do not mention this explicitly. Then the answer is yes.

Suppose wlog that $0\not\in f(\partial D)$. Suppose by contradition that zeros
of $f$ have an accumulation point $z^*$ in $D$. Then, according to a theorem of Vilmhurst, there is an open analytic arc $\gamma$ which has $z^*$ in its interior, and such that $f(z)=0$ on $\gamma$. Consider now this whole arc $\gamma$ (the maximal arc on which $f(z)=0$). It cannot reach the boundary $\partial D$ because
on $\partial D$ we have $|f(z)|>\delta>0$ by assumption. So $\gamma$ must contain a loop,
but then  $f\equiv 0$ inside this loop and thus everywhere.

Vilmhurst, The valence of harmonic polynomials, PAMS 126, 7 (1998) 2077-2081,
Theorems 3, 4.

I don't know whether this argument generalizes to CAT(0) spaces because I do not know what is a harmonic maping into a CAT(0) space.