The answer is yes.
Every function $f:\newcommand\R{\mathbb{R}}\R\to\R$ is the sum of two surjective functions, $f=g+h$.
To see this, 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$ 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$ 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.
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$.
This argument uses the axiom of choice, but perhaps there is an effective construction as in the other question.