I know from many online sources, including this great one, that similar matrices have the same eigenvalues and the same number of eigenvectors (not necessarily the same exact eigenvectors). But how would I prove that the number of eigenvectors is the same.
In my specific case I have two $3×3$ matrices with the same eigenvalues (labda with multiplicity $3$) but they have eigenspace dimensions $2$ and $1$. (this tells us that they are not diagonalizable, but I want to prove that they are not similar between each other)
The statement that you are trying to prove, as far as I can tell, is as follows:
The quick proof is as follows: it suffices to note that the map $T(x) = Sx$ defines an isomorphism between the eigenspace of $A$ associated with $\lambda$ and the eigenspace of $B$ associated with $\lambda$.
Here is a proof that avoids the notions of subspaces and dimension.
Suppose that $\{v_1,\dots,v_k\}$ is a linearly independent set of eigenvectors of $A$ associated with $\lambda$ (so $Av_j = \lambda v_j$ for $j=1,\dots,k$). Verify the following:
It follows that $\{Sv_1,\dots,Sv_k\}$ is a linearly independent set of eigenvectors of $B$ associated with $\lambda$. In other words, $B$ has at least $k$ eigenvectors associated with $\lambda$. That is, $B$ has at least as many "eigenvectors" as $A$.
Symmetrically, if $\{w_1,\dots,w_k\}$ is a linearly independent set of eigenvectors of $B$ associated with $\lambda$, then $\{S^{-1}w_1,\dots,S^{-1}w_k\}$ is a linearly independent set of eigenvectors of $A$ associated with $\lambda$. That is, $A$ has at least as many "eigenvectors" as $B$.
So, we find that the number for these two matrices must be the same.