If $G$ is an abelian group, is then $H=\{a\in G: a*a=a\}\leq G$? I feel very silly for asking this question:

Let $G$ be an abelian group. Show that $H=\{a\in G:a*a=a\}$ is a subgroup of $G$.

I did not get this question right, but this is what I managed to observe:

Notice that$$a*a=a,$$$$a^{-1}*a*a=a^{-1}*a,$$$$e*a=e,$$$$a=e,$$where $a^{-1}$ is the inverse of $a$, and $e$ is the identity element. Therefore, it must be the case that $H=\{e\}$, which is a subgroup of $G$.

The professor marked that conclusion wrong, however, and corrected it by commenting that this only showed that $e\in H$.
I am a little confused: look at how $H$ is defined. I believe this is just not an intuitive exercise; I never used the fact that $H$ is abelian, so I clearly must be missing something.

Your professor is wrong. You have showed that if $a$ is in $H$, then $a=e$. What you haven't (explicitly) showed is that $e$ is in $H$, but that is easy.
One way to make the question more interesting, and to make the assumption that $G$ is abelian relevant, would be to instead define $H$ as $\{ a \in G:a*a=e\}$.
