This is a good question. Clearly the subspace of $L^2(m)$ generated by the characters will separate points of $G$ if and only if the set of continuous characters themselves (without any linear combinations taken) separates points of $G$. If you just unwind the definition this is the assertion that for any $a$ and $b$ in $G$ satisfying $a \neq b$, there is a continuous character $\chi$ on $G$ with $\chi(a) \neq \chi(b)$. And if you let $e$ denote the identity element of $G$, since characters are multiplicative, this condition is equivalent to the assertion that for any $g \neq e$ there is a continuous character $\chi$ on $G$ satisfying $\chi(g) \neq 1$.

Note that for some compact groups, this is obvious: e.g. for $\mathbb{T} = \{w \in \mathbb{C}: |w| = 1\}$, the single character $z \mapsto z$, the identity mapping, does this for every $g \neq 1$ in $\mathbb{T}$. But for an abstract, arbitrary compact abelian group, this is a substantial theorem. I think it was first proved by von Neumann. The statement remains true for locally compact abelian groups and even generalizes to locally compact groups that may not be abelian. In this form it is often called the Gelfand-Raikov theorem and asserts that if $G$ is a locally compact group, then for every $g \in G$ with $g \neq e$, there is some Hilbert space $H$ and a continuous and irreducible unitary representation $\phi: G \to \mathcal{B}(H)$ of $G$ on $H$ with the property that $\phi(g)$ is not the identity operator on $H$. One recovers the fact you want by noticing that if $G$ is compact then $H$ is necessarily finite dimensional and that if $G$ is abelian $H$ is in fact one-dimensional and hence a character (some version of this latter fact is often called Schur's lemma).

In fact, I can't think of any proof of the result that you want, except the one that springs to mind by specializing this entire argument to your case--- ie, turning it into a problem in representation theory. Frankly, I don't know what von Neumann's original proof was: it may have been simpler, but I do not think it was simple. If you look at most modern treatments of this stuff in textbooks they tend to give the general result and deduce your special case as a corollary.

The Gelfand-Raikov theorem is a rather substantial piece of work. It is usually proved by noticing that irreducible unitary representations of $G$ on Hilbert space are in a one-to-one correspondence with certain representations of the so-called group algebra $L^1(G)$ on Hilbert space. These turn out to be much easier to construct abstractly: you can get them from positive linear functionals on $L^1(G)$, which in turn can be obtained from functions on $G$ itself satisfying certain "positivity" properties, and one ends up proving your result by proving that there are enough of these to make everything work.

In my opinion at least, this is all significantly harder to prove than the Stone-Weierstrass theorem, or even the existence of Haar measure--- so if you are willing to take those for granted, you should be willing to take this fact for granted too. Rest assured: that characters separate points in an arbitrary compact abelian group is not a triviality (although in particular concrete examples, as we saw, it can be obvious). The fact that you noticed it was not easy to prove shows that you were thinking very carefully about the problem.

For a good reference on all of this stuff I recommend e.g. Hewitt and Ross's "Abstract Harmonic Analysis," or a book by Folland with the same or an equivalent title.