The answer is yes. **Theorem.** Every function $f:\newcommand\R{\mathbb{R}}\R\to\R$ is the sum of two surjective functions, $f=g+h$. **Proof.** Enumerate the reals in order type continuum $\R=\{x_\alpha\mid\alpha<\frak{c}\}$. We define $g$ and $h$ in stages, so that at every stage, fewer than continuum many values have been specified. To ensure surjectivity, we look at $x_\alpha$, and define $g(a)=x_\alpha$ for some $a$ for which $g(a)$ is not yet specified, and $h(a)=f(a)-g(a)$, and similarly $h(b)=x_\alpha$ and $g(b)=f(b)-h(b)$ for some $b$ similarly not yet used. And we also make sure $g(x_\alpha)$ and $h(x_\alpha)$ are defined, if they haven't yet been, by using $f(x_\alpha)/2$ for each. At each stage, the domains of the approximations to $g$ and $h$ are the same. This defines two functions $g$ and $h$, and they will both be surjective, because at stage $\alpha$ we specifically placed $x_\alpha$ into their ranges, and we will have $g(x)+h(x)=f(x)$ for every $x$, since we ensured that property every time we defined another value of $g$ or $h$. $\Box$ This argument uses the axiom of choice, but perhaps there is an effective construction as in [the injectivity question](https://mathoverflow.net/a/459167/1946).