Let $G$ be a finite, non-abelian group. Show that if $Aut(G)$ acts on $G$ by $\sigma.g=\sigma(g)$ for each $\sigma \in Aut(G)$, $g \in G$, then there exist at least three orbits.
I think I could arrive to a solution but I am not sure if it is correct, I would appreciate if someone could take a look at it to check if I've made any mistakes. Anyone who has an alternative answer is welcome to share it.
Since for every $\sigma \in Aut(G)$, $\sigma(e)=e$, then there is at least one orbit which contains only one element. Now since $G$ is not abelian, there exists at least one element $x \in G$ such that $gxg^{-1} \neq x$ for some $g \in G$. So we have another orbit $\mathcal O_x$ which contains at least two elements ($x,gxg^{-1})$.
Now suppose these two are the only orbits by this action. Then, by the class equation, if $|G|=n$ we have $$n=|\mathcal O_e|+|\mathcal O_x|=1+|\mathcal O_x|$$ This means $|\mathcal O_x|=n-1$. But $|\mathcal O_x|=[G:E_G(x)]=\dfrac{n}{|E_G(x)|}$. It follows $n=(n-1)|E_G(x)|$ so $|E_G(x)| \geq 2$.
We obtain the inequality $$n \geq 2n-2,$$ or, equivalently $$2\geq n$$
But if $n=1,2$ then $G$ is abelian which is absurd. It follows that there must be at least three orbits.
Alternatively:
As you noticed, $\{e\}$ is an orbit, so if there are only two in all, $G\setminus\{e\}$ must be an orbit. This implies immediately that all elements of $G$ which are not $e$ are of the same order $n$. The number must be prime, for otherwise $G$ contains cyclic groups of order $n$ which contain elements which are not of order $n$.
It follows that $G$ is a $p$-group for some prime $p$. Its center is therefore not trivial. Since $Aut(G)$ acts transitively on $G\setminus\{e\}$, it follows that $G$ is abelian.