The following is an idea originally communicated by Richard Brauer. I'm having difficulty following some of the combinatorial elements.
Let $G$ be a finite group containing exactly two conjugacy classes of involutions. Let $u_1$ and $u_2$ be nonconjugate involutions in $G$. Let $c_i=|C(u_i)|$, the respective centralizers of the $u_i$. Let $S_i$ be the set of ordered pairs $(x,y)$ with $x$ conjugate to $u_1$, $y$ conjugate to $u_2$, and $(xy)^n=u_i$ for some $n$. Let $s_i=|S_i|$. Then $|G|=c_1s_2+c_2s_1$.
The idea is to count the ordered pairs $(x,y)$ with $x$ conjugate to $u_1$ and $y$ conjugate to $u_2$ in two different ways. Is it somehow clear that this number is $(|G|/c_1)(|G|/c_2)$ right off the bat? I believe this follows since the possible choices of the $x$ is the cardinality of the orbit of $u_1$ under the conjugation action, which equals the index of the stabilizer in $G$, but the stabilizer is just the centralizer in this case. Likewise for the choices of $y$.
On the other hand, I know that if the product $uv$ of two involutions $u$ and $v$ has odd order, then $u$ and $v$ are conjugate. So if $x$ and $y$ are not conjugate here, their product $xy$ has even order. Then $(xy)^n$ for $n=o(xy)/2$ is an involution, and thus conjugate to either $u_1$ or $u_2$. This exhausts all the pairs in question, but why does counting in this way give $(|G|/c_1)s_1+(|G|/c_2)s_2$? I only know that $(xy)^n$ is conjugate to some $u_i$ for some $n$, not that $(xy)^n=u_i$ as in the definition of the $s_i$.
After that, the result will follow from the equality $$ (|G|/c_1)(|G|/c_2)=(|G|/c_1)s_1+(|G|/c_2)s_2. $$