Let $ϕ$ be a state on a $C∗$-algebra $ A$. Suppose that for some selfadjoint element $a ∈ A$ one has $ ϕ(a^{2}) = ϕ(a)^2$. Show that this implies that $ϕ(ab) = ϕ(ba) = ϕ(a)ϕ(b)$ for any $ b ∈ A$.
My step : easy to check that it is enough to prove the theorem in case $b=b^*$. When we need to prove that $ϕ(ab) = \overline{ϕ(ab)}$.
But what's next? Could you take me some small hint?
Maybe I'm wrong, but from what you wrote it looks like you are missing the point. The hard thing is to prove that $\phi(ab)=\phi(a)\phi(b)$. And the other equality requires a similar proof "on the other side" (and one of the equalities does not imply the other).
The fact you want to prove holds more generally for unital completely positive maps: if $\Phi$ is ucp and $\Phi(a^*a)=\Phi(a)^*\Phi(a)$, then $a$ is in the multiplicative domain of $\Phi$, which means precisely that $\Phi(ab)=\Phi(a)\phi(b)$ for any $b$.
In your case, since $\phi$ is a state things are a bit simpler, and what you want is a simple application of Cauchy-Schwarz. Namely, apply Cauchy-Schwarz to $$ |\phi((a-\phi(a))b)|. $$