First you can reduce to a matrix with positive coefficients. This is like the decomposition of a Markov chain, but in an "algebraic" context; thus you reduce to the case when is irreducible (on a smaller space) and then there exists a power such that has positive coefficients, so we may study (still stochastic, and ).
Then for stochastic matrices with positive coefficients, one proves rather simply (considering right eigenvectors) that 1 is a simple eigenvalue and that it is the (only) greatest in absolute value. More precisely, if , apply the triangular inequality to the row where has the greatest component (use stochasticity) ; you get , and if the previous inequalities are in fact equalities, hence using the "equality cases" you get that for all i,j, this should be it.
Then (using triangularization), converges to a rank 1 matrix , which has to be stochastic and nonnegative. Therefore all the rows of are equal, stochastic and nonnegative. And since (from ), this common row is a left eigenvector for P associated with eigenvalue 1. And because 1 is a simple eigenvalue, this vector spans the eigenspace.
This is what you need. There are other proofs, but they all involve the same ideas: study the eigenvalues to the right using triangular inequalities, say that they are the same as the eigenvalues to the left with same multiplicities, and conclude in one way or another using the spectral radius or the limit of like I did. Now you see why the Markov chain proof is not really elaborate (no ergodicity involved, by the way, only the Markov property; and much more visual).
Dealing with simple proofs: take as a challenge to prove (for yourself) from scratch that there exists a non-zero such that (i.e. a left eigenvector for eigenvalue 1). When I say "from scratch", that means no determinant (or you prove every property you use, but that's not a nice and clean way to procede, since determinant is a "strong" tool compared to the simple statement...). After that, which is not very different from the fact that A and have same rank for any A, then the Markov chain version should look even more elementary.