By setting $x$ and $y$ to be $0$, we obtain $f(0)=0$. Now, with $y:=0$, we get
$$f(x^3)=x^2\,f(x)\tag{*}$$
for all $x\in\mathbb{R}$. Likewise, with $x:=0$, we get
$$f(y^3)=y\,f(y^2)\tag{#}$$
for all $y\in\mathbb{R}$. This shows that
$$x\,f(x^2)=f(x^3)=x^2\,f(x)$$
for every $x\in\mathbb{R}$. Thus, along with $f(0)=0$, we conclude that
$$f(x^2)=x\,f(x)\tag{$\star$}$$
for all $x\in\mathbb{R}$.
Now, we have by (*) and (#) that
$$\begin{align}f(x+y)&=f\Big((\sqrt[3]{x})^3+(\sqrt[3]{y})^3\Big)\\&=(\sqrt[3]{x})^2\,f\big(\sqrt[3]{x}\big)+\sqrt[3]{y}\,f\big((\sqrt[3]{y})^2\big)\\&=f\big((\sqrt[3]{x})^3\big)+f\big((\sqrt[3]{y})^3\big)=f(x)+f(y)\tag{\$}\end{align}$$
for every $x,y\in\mathbb{R}$. From ($\star$) and (\$), we have
$$f\big((x+1)^2\big)=(x+1)\,f(x+1)=(x+1)\,\big(f(x)+f(1)\big)$$
for any $x\in\mathbb{R}$. However, from ($\star$) and (\$), we also have
$$\begin{align}f\big((x+1)^2\big)&=f(x^2+2x+1)\\&=f(x^2)+2\,f(x)+f(1)=x\,f(x)+2\,f(x)+f(1)\end{align}$$
for any $x\in\mathbb{R}$. That is,
$$(x+1)\,\big(f(x)+f(1)\big)=x\,f(x)+2\,f(x)+f(1)$$
for any $x\in\mathbb{R}$, whence
$$f(x)=f(1)\,x$$
for all $x\in\mathbb{R}$.