Here is the first part:
Lemma 1: $f(x)\le 0 $ for all $x\in \mathbb R$.
Proof: Letting $y=t-x$, we find $f(t)\le (t-x)f(x)+f(f(x)) = f(x)\cdot t+f(f(x))-xf(x)$. For fixed $x$, the right hand side is a line with slope $f(x)$. Thus:
- If there exists $x$ such that $f(x)<0$, we have $f(t)\le m_1 t + b_1$ with $m_1<0$, esp. $f(t)<0$ for $t\gg0$.
- If there exists $x$ such that $f(x)>0$, we have $f(t)\le m_2 t + b_2$ with $m_2>0$, esp. $f(t)<0$ for $t\ll0$. But then (1) applies again, i.e. we also have $f(t)\le m_1 t + b_1$ with $m_1<0$ and $f(t)<0$ for $t\gg 0$.
Let $M:=\sup f$. Then $M<\infty$. Indeed, if $f$ assumes positive values at all, we conclude from (2) that $f(t)\le \min\{m_1t+b_1,m_2t+b_2\}\le \frac{m_2b_1-m_1b_2}{m_2-m_1}+b_1$, i.e. a bound by a line with positive slope and another line with negative slope makes a bound by their intersection point. If $M>0$ let $a=\inf\{x|f(x)\ge-1\}$. Because on the one hand values $>-1$ are assumed and on the other hand $f(t)\le m_2t+b_2$ with $m_2>0$, we see that $-\infty. Then for all $x we have $f(x+M+1)\le(M+1)f(x)+f(f(x))<-(M+1)+M=-1$. But that implies $f(x)<-1$ for all $x, a contradiction. Therefore we must have $M\le 0$. $_\blacksquare$
(Added after answer was accepted):
Corollary 1: $f(x+y)\le y f(x)$.
Proof: $f(f(x))\le0$.$_\blacksquare$
Corollary 2: If $x<0$ then $0\ge f(x)\ge \frac {f(0)}{|x|}$.
Proof: Use corollary 1 with $y=-x=|x|$.$_\blacksquare$
Lemma 2: $f(x)=0$ if $x\le 0$.
Proof: Let $y=f(x)-x$ in the original functional inequality, that is $f(f(x))=f(x+f(x)-x) \le (f(x)-x)f(x)+ f(f(x)).$ It follows that $(f(x)-x)f(x)\ge 0$. For $x\ll 0$ the first factor is positiv because of corollary 2. But then $f(x)=0$ for such $x$. Using this $x$ and $y=0$, we find $0=f(x+0)\le 0\cdot f(x)+f(f(x)) = f(0),$ hence $f(0)=0$ by lemma 1 and finally $f(x)=0$ for $x<0$ by corollary 2.$_\blacksquare$