Let $n = \lvert G \rvert$ be the order of $G$. Let $T = \{z \in \mathbb{C} : z^n = 1\}$ be the set of $n$th roots of unity. Since $\mathbb{C}$ is a field, $T$ is finite -- indeed you might know that $T = \{e^{2\pi i k/n} : k \in \{0, \dots, n-1\}\}$.
Now for any character $\chi$ and any $g \in G$, we have $\chi(g)^n = \chi(g^n) = \chi(1_G) = 1$ by Lagrange's Theorem. Thus, $\chi(g) \in T$. This means that every character of $G$ is actually a function $G \to T$! Since $G$ and $T$ are finite, there are only finitely many such functions.
Unless I'm missing something here, the exercise is wrong as stated.
Let $k$ of characteristic $p>0$ and let $G=H=\Bbb G_m$. Let $\phi:G \to G$ be the map that raises everything to the $p$-th power. Then $\phi$ is injective (as $p$-th roots in char $p$ are unique), but on $X(G)=\Bbb Z$, $\phi$ induces the "multiplication by $p$"-map, which is not surjective.
So what is going on here?
I think this behaviour is a good example of why in finite characteristic, algebraic groups via classical algebraic geometry (even over an algebraically base closed field) is not the right approach. You just lose too much when you don't allow nilpotents.
Let me sketch you, even if you don't know schemes, why group schemes are "better" in this case. The thing is that the homomorphism I gave above is not "injective" as a morphism of group schemes: it has a kernel. Now describing this kernel might be tricky if you don't know schemes, but you can think of it as the "$p$-th roots of unity", let's call it $\mu_p$.
I think it should be clear that the kernel of raising to the $p$-th power has something to do with $p$-th roots of unity. If you want to think in terms of Hopf algebras, then we have a Hopf algebra $k[T]/(T^p-1)$ (with the comultiplication defined uniquely by $\Delta(T)=T \otimes T$). This is non-reduced, so it won't give rise to an algebraic group. It still gives rise to a perfectly fine group scheme, though. The classical approach can't distinguish this group scheme from the trivial group scheme, because there are no non-trivial $p$-th roots of unity in $k$, but $\mu_p$ is still nontrivial as a group scheme.
One way one can "see" that $\mu_p$ is non-trivial is to use the "functor of points" approach. A group scheme can be identified with (basically) a representable functor on $k$-algebras with values in groups. Now $\mu_p$ represents the functor $A \mapsto \{a \in A \mid a^p=1\}$. If we allow non-reduced $A$ this is clearly distinct from the terminal functor that sends everything to the one-point set.
Best Answer
Algebraic subgroups of an algebraic group $G$ are in particular closed subschemes of $G$ and thus they satisfy the descending chain condition. This implies that given any collection $(H_i)_{i \in I}$ of algebraic subgroups of $G$, the intersection $H = \bigcap_{i \in I} H_i$ can already be realized as a finite intersection $\bigcap_{j = 1}^n H_{i_j}$ for some indices $i_1, \dotsc, i_n \in I$.
Applying this to your setting you find finitely many characters $\chi_1, \dotsc, \chi_n$ of $G$ such that $H = \bigcap_{j = 1}^n \ker(\chi_j)$. Then your argument gives an injective morphism of algebraic groups $G/H \subseteq \mathbf{G}_m^n$ and as you already mentioned this shows that $G/H$ is diagonalizable.