Let $c:=f(0)$. Plugging in $f(y)$ for $x$ in the original functional equation yields
$$f\big(f(y)\big)=\frac{1+c}{2}-\frac{\big(f(y)\big)^2}{2}\tag{*}$$
for all real numbers $y$. Then (*) implies that $c\neq 0$.
Taking $y:=0$ in the original functional equation, we obtain
$$f(x-c)-f(x)=f(c)-1+cx$$
for every real number $x$. Using $c\neq 0$, this proves that, for each real number $t$, there exist real numbers $p_t$ and $q_t$ such that
$$t=f(p_t)-f(q_t)\,.$$
Replacing $x$ by $f(x)$ in the original functional equation, we get
$$f\big(f(x)-f(y)\big)=f\big(f(y)\big)+f(x)\,f(y)+f\big(f(x)\big)-1$$
for all real numbers $x$ and $y$. By (*), the previous equation becomes
$$f\big(f(x)-f(y)\big)=c-\frac{\big(f(x)-f(y)\big)^2}{2}$$
for all $x,y\in\Bbb R$. Replacing $x$ and $y$ in the equation above by $p_t$ and $q_t$, respectively, we have $$f(t)=c-\frac{t^2}{2}$$
for all $t\in \Bbb R$. Comparing the previous equation with (*), we deduce that $c=1$. That is, $$f(t)=1-\frac{t^2}{2}$$ for every real number $t$, and it can be easily seen that this function is indeed a solution to the given functional equation.