Vamos a investigar el caso especial en que $f$ es continua.
Deje $k=f(1)$ y
$$S=\{\,t\in\Bbb R\mid f(t)=kt\,\}. $$
Tratando de $x=y=0$ nos encontramos con $f(0)=0$. A continuación, con $y=-x$ nos encontramos con que $f(x)=-f(-x)$, es decir, $f$ es impar. A continuación, también se $S=-S$. Hasta ahora hemos $\{-1,0,1\}\subseteq S$.
Con $y=0$, tenemos
$$\tag1f(x^2)=xf(x)$$
por lo tanto
$$\begin{align}f(x^2-y^2)&=(x-y)f(x)+(x-y)f(y)\\
&=\left(1-\frac yx\right)xf(x)+\left(\frac xy-1\right)yf(y)\\
&=\left(1-\frac yx\right)f(x^2)+\left(\frac xy-1\right)f(y^2).\end{align} $$
Ahora si $x^2,y^2\in S$
$$f(x^2-y^2)=\left(1-\frac yx\right)kx^2+\left(\frac xy-1\right)ky^2=kx^2-ky^2$$
y así también se $x^2-y^2\in S$. Más generalmente, si dos de los números de $x^2,y^2,x^2-y^2$$\in S$, luego los tres se $\in S$.
Llegamos a la conclusión de que para dos números no negativos $\in S$, también su suma y la diferencia es $\in S$, lo que hace que $S$ a un subgrupo de $\Bbb R$. Entonces, al menos,$\Bbb Z\subseteq S$.
De $(1)$, podemos ver que $S$ es cerrado bajo tomando raíces cuadradas de los elementos positivos (es decir, $x^2\in S$ implica $x\in S$). Como un subgrupo, $S$ debe ser entonces un subconjunto denso de $\Bbb R$.
Por la continuidad de $f$, la $S$ debe ser cerrado, por lo tanto todos los de $\Bbb R$, como iba a ser mostrado.