Prove that if a group $G$ contains a subgroup $H$ of finite index, then $G$ contains a normal subgroup $N$ of finite index such that $N \leq H$. Show furthermore that if $G$ is finitely generated with a subgroup of finite index $N$, then there are only finitely many subgroups of $G$ of that index, and $G$ has a finite index subgroup which is preserved under all automorphisms, i.e. a characteristic subgroup of finite index.
Consider the group action $\varphi : G \to \text{Aut}(G/H)$ defined by $\varphi(g')(gH) = g'gH$. It can easily be checked that this is well defined and $\varphi(g')$ is a group homomorphism for all $g' \in G$. We have that $N := \ker \varphi \trianglelefteq G$ and by first isomorphism theorem $G / N$ is congruent to a subgroup of $\text{Aut}(G/H)$, which is finite since $G/H$ is finite. Suppose that $G/H = g_1H,\dots,g_nH$ and $H/N = h_1N,\dots,h_mN$ (since $H/N \leq G/N$ and the latter is finite, so is $H/N$). Then $G = g_1H \sqcup \cdots \sqcup g_nH = \displaystyle\bigsqcup_{1 \leq i \leq n, 1 \leq j \leq m} g_ih_jN$ which can easily be verified. In particular, we have that $[G:N] = [G:H][H:N]$ is finite.
Also, I have verified/checked that there can be only finitely many subgroups of $G$ of a fixed finite index if $G$ is finitely generated. I am "stuck" on the third part. I am wondering if there are any nontrivial characteristic subgroup of finite index other than the group $G$ itself, which I think the question is meaning to say (otherwise, the question becomes too easy). So my question is: If we have a subgroup of finite index $n$ and $G$ is finitely generated, is there a subgroup $H$ of $G$ that has finite index $n$ and is fixed by all automorphisms of $G$? We know that the kernel of the map $\psi: G \to \text{Aut}(G/H)$ is normal in $G$, but I am not sure if we can show that the kernel is characteristic.
You have correctly solved the first part of showing that a subgroup $H$ of finite index yields a normal subgroup $N$ of finite index contained in $H$. Next, assume that $G$ is finitely generated but has infinitely many subgroups $H$ of some fixed finite index $k$. You then obtain infinitely many distinct homomorphisms $G \to S_k$ since each subgroup $H$ of index $k$ is the stabilizer of some point in one such homomorphism. However, this contradicts the fact that $G$ is finitely generated since there are only finitely many choices for each generator.
Finally, now that you have shown that there are only finitely many subgroups $H$ of index $k$, you want to find a proper characteristic subgroup of $G$ of finite index. As you pointed out, you want some subgroup stabilized by all automorphisms. and the way you can achieve this is to define such a subgroup explicitly and free of choice. You have finitely many subgroups $H$ of index $k$. What is the most natural proper subgroup you can make with them? Do you see why proving that there are finitely many $H$ of index $k$ was important for this step?