Here is a proof that relies heavily on the open mapping theorem.
Since the zeros of $f,g,f',g'$ are isolated, we can find some $z_0$ such that $f,g,f',g'$
are non zero in a neighbourhood of $z_0$.
Suppose $z$ lies in this neighbourhood of $z_0$.
If we let $\phi(t) = {1 \over 2}|f(z+th)|$, it is straightforward to show that
$\phi'(0) = { \operatorname{re}(\overline{f(z)} f'(z) h ) \over |f(z)|}$, hence since $|f(z)| + |g(z)|$ is constant
we obtain
\begin{eqnarray}
{ \operatorname{re}(\overline{f(z)} f'(z) h ) \over |f(z)|} + { \operatorname{re}(\overline{g(z)} g'(z) h ) \over |g(z)|} &=& \operatorname{re} \left[ ( { \overline{f(z)} f'(z) \over |f(z)|} + { \overline{g(z)} g'(z) \over |g(z)|} ) h\right] \\
&=& \operatorname{re} \left[ ( { \overline{f(z)} f'(z) \over |f(z)|} + { \overline{g(z)} g'(z) \over |g(z)|} ) h\right] \\
&=& 0
\end{eqnarray}
for all $h$.
Hence, we have ${ \overline{f(z)} f'(z) \over |f(z)|} + { \overline{g(z)} g'(z) \over |g(z)|} = 0$ and so
${f'(z) \over g'(z)} = -{|f(z)| \over \overline{f(z)} } {\overline{g(z)} \over |g(z)|}$, in particular, $| {f'(z) \over g'(z)}| = 1$. Hence
${f'(z) \over g'(z)} = c$ for some constant and so
${g(z) \over f(z)} = - \overline{c} | {g(z) \over f(z)} | $. Hence the values $z \mapsto {g(z) \over f(z)}$ takes lie on the line $\{t \overline{c} \}_{t \in \mathbb{R}}$ and hence we must have ${g(z) \over f(z)} = d$, another constant. Hence $(1+|d|)|f(z)|$ is a constant and so $f$ is a constant.