To prove this statement using characters is kind of working backwards.
You can prove this statement without characters as follows: first, show that any simple $A=\mathbb{C}[G]$-module $M$ is a quotient of $A$. To do that, fix $0\neq m\in M$ and define $\mathbb{C}[G]\rightarrow M, \; \sum\alpha_gg \mapsto\sum\alpha_gg(m)$. Show that this is onto ($M$ is simple) and use the isomorphism theorem. Now, use Maschke's theorem to show that if $M$ is a quotient of $A$, then it is also a direct summand of $A$.
For details of all this, see e.g. Proposition 2.14 of my notes on representation theory.
(1) Is wrong. You are failing to take into account there can be linear combinations of non-fixed-points which are fixed points of the conjugation action. Thus, $|Z(G)|$ is just a lower bound for the multiplicitiy of the trivial rep in the conjugation rep. Indeed, the trivial-rep isotypic component (i.e. sum of all the trivial subreps) of the conjugation rep admits a basis of the form $\{\sum_{g\in C}g\mid C\}$ as $C$ runs over the conjugacy classes of $G$. Since central elements form singleton conjugacy classes, these are the single-summand elements of this basis. But all you get is that the number of conjugacy classes equals itself.
You will basically have to learn Artin-Wedderburn if you want to understand this fact. You should already know there are algebra homomorphisms $\mathbb{C}[G]\to\mathrm{End}(V)$ for each irrep $V$. This means you can put them together into a homomorphism $\mathbb{C}[G]\to\bigoplus\mathrm{End}(V)$ (the sum is over irreps). This must have trivial kernel, since any element of the kernel would act as $0$ on any irrep, hence on any rep (by semisimplity), hence on the regular rep $\mathbb{C}G$ hence it times $1$ would be $0$ within $\mathbb{C}[G]$. To see that the map is also onto (and hence an algebra isomorphism), we can show the dimensions match.
To do this, let's find the multiplicity of any irrep $V$ within $\mathbb{C}G$. That equals the dimension of the hom space $\hom_G(\Bbb CG,V)$ (which you can show using semisimplicity and the distributivity of $\mathrm{hom}$). But any equivariant map $\mathbb{C}G\to V$ is determined by where $1$ is sent to, which is arbitrary, hence this hom-space is naturally isomorphic (as a vector space) to $V$ itself, so the dimension (hence the multiplicity) is $\dim V$ itself. As a result, we get $\dim\mathbb{C}[G]=\sum(\dim V)^2$.
On the one hand, the multiplicity of the trivial rep in the conjugaction action is the number of conjugacy classes. (More generally, if $\Omega$ is a $G$-set, the multiplicity of the trivial rep in the permutation rep $\mathbb{C}\Omega$ equals the number of orbits, by using a basis like the one I described for the conjugation rep. Can you show this? It is a nice exercise, and relevant to Burnside's counting lemma.) On the other hand, the trivial representation under the conjugation action corresponds to the center $Z(\mathbb{C}[G])$ of the group algebra, which has the same dimension as $\bigoplus Z(\mathrm{End}(V))$, which equals the number of irreps.
Best Answer
You don't need character theory to do this even in characteristic zero. If $V$ is a completely reducible representation then the number of times an irreducible representation $V_i$ occurs in a direct sum decomposition is $\dim \text{Hom}(V_i, V)$, which is just an ordinary integer. This follows from Schur's lemma. If $K$ isn't algebraically closed then we need to modify the expression to $\frac{\dim \text{Hom}(V_i, V)}{\dim \text{End}(V_i)}$.
In general, any completely reducible module (over any ring, and more generally in any suitable abelian category) has a canonical "multiplicity decomposition"
$$V \cong \bigoplus_i \text{Hom}(V_i, V) \otimes V_i$$
where $\text{Hom}(V_i, V)$ is the "multiplicity space" associated to $V_i$. This is a completely canonical and in particular uniquely determined version of the irreducible decomposition, which by contrast is not unique if the multiplicities are greater than $1$ (a choice of such a decomposition amounts to a choice of splitting of the multiplicity spaces into lines).