It is given that:
$x$ is its own inverse.
$y$ is its own inverse.
$x*y$ is its own inverse.
$y*x$ is its own inverse.
Now i will show you that $x*y$ and $y*x$ are essentially same.
$x*y = x*e*y = x*(x*y*x*y)*y = (x*x)*y*x*(y*y) = e*y*x*e = y*x$
(Group is associative so I do not care about brackets.)
This turns out to be abelian group. and $x*y$ is no different from $y*x$
Up to this point i have 4 elements - $x$, $y$, $e$, $x*y$. (G is abelian therefore $x*y$ is same as $y*x$)
Now see if you can have a new element. It is given that every element is product of some numbers of $x$ and $y$.
Lets try with $x$.
$x*\circ$, what u would like to put next to $x$ ?
If you put $x$ then there is no use and you have to start over again because of $x*x=e$ now you have to start all over again.
Put y next to x. : $x*y$ (this element we already have, we want different element so try multiplying further.)
$x*y*\circ$, obviously u cant put $y$, next to $x*y$ because it will be x again: $x*y*y=x*e=x$
(you have to put alternate.)
Put $x$, next to $x*y$: $x*y*x$.
This is equal to $x*x*y$ because of commutative property. $x*y*x=x*x*y=y$.
I showed you that, once you get $x*y$ using $x$, you can not get next element by multiplying into $x*y$ further. Because of commutive property it will be again $x$ or $y$.
Similarly, if we start with $y$, we have the same issue.
This concludes that we can not generate further element and only four element can be there at max.
There is a theorem for abelian group: If every element is its own inverse then Group G is abelian. I am not sure if proof of that theorem relates to this problem somewhere, You can check it out. :)