Probability generating functions are probably the easiest route. The PGF for $X$ is
$$
G_X(z)=\sum_{k=0}^{\infty}\frac{e^{-\lambda}\lambda^k}{k!}z^k=e^{\lambda(z-1)}.
$$
Then, use the fact that $\mathbb{E}[X(X-1)]=G''(1)$.
Also, note that your expression for $\mathbb{E}[X(X-1)]$ is incorrect: it should be
$$
\mathbb{E}[X(X-1)]=\sum_{k=0}^{\infty}k(k-1)P(X=k)=\sum_{k=0}^{\infty}k(k-1)\frac{e^{-\lambda}\lambda^k}{k!}.
$$
If you are uncomfortable with PGFs, you could also work directly here by noting that the $k=0$ and $k=1$ terms are 0, and for $k\geq2$ we have
$$
\frac{k(k-1)}{k!}=\frac{1}{(k-2)!},
$$
so that
$$
\mathbb{E}[X(X-1)]=\lambda^2e^{-\lambda}\sum_{k=2}^{\infty}\frac{\lambda^{k-2}}{(k-2)!}=\lambda^2e^{-\lambda}\sum_{k=0}^{\infty}\frac{\lambda^k}{k!}=\lambda^2.
$$
Obviously, this works just fine; however, you really should try to get comfortable with PGFs if you aren't already - they are extremely helpful tools!