Proving ring $R$ with unity is commutative if $(xy)^2 = x^2y^2$ 
Let $R$ be a ring with unity. Assume that $\left(xy\right)^2 = x^2 y^2$ for all $x, y \in R$. Prove that $R$ is commutative.

I tried several methods to solve this but couldn't get through. Now the solution in almost all the textbooks goes like this.
First take $x$ and $y+1$ so that $ (x(y+1))^2 = x^2(y+1)^2 => xyx = x^2y \\$ 
Then substitute $x+1$ in place of $x$ to get $yx = xy$
I have always believed that solutions to questions can't be abrupt, there has to be a logic behind approaching in a particular way. Therefore, I couldn't grasp the intuition behind this method.
Can somebody please suggest some other intuitive way or explain the reasoning behind above solution?

This is probably not the best possible answer, but still, I think it can make things a bit clearer.
Let's begin by taking the given identity and subtracting parts from each other. We get this: $$x[x, y]y = 0,$$
where $[x, y] = xy - yx$. This is not what we want: we want $[x, y] = 0$. If $R$ were a division ring, we would already be done (just divide by $x$ on the left and $y$ on the right). If $R$ didn't have zero divisors, we would also be done (it's allowed to remove non-zero factors from equations in such rings). But we have an arbitrary ring, so some trickery is required to get rid of the $x$ and $y$ around $[x, y]$.
Adding $1$ to one of the variables seems to move things forward: indeed, it is very easy to check that $[x+y, z] = [x, z] + [y, z]$ for all $x, y, z \in R$, so $[x+1, y] = [x, y] + [1, y] = [x, y]$. Thus, substituting $x+1$ for $x$ gives us
$$
(x+1)[x, y]y = 0.
$$
Subtracting this from the original equation, we get $[x, y]y = 0$. We managed to kill $x$ on the left, even though there is no division in our ring! Now we do the same trick with $y$, and we have proved the desired $[x, y]=0$.
This doesn't explain where the idea of "adding $1$" comes from, but hopefully it makes it a bit less mysterious.
