There is a slight mistake in your argument: a priori, you don't know if the order $bN$ in $G/N$ is exactly $k$, but you do know that it is of order dividing $k$, hence relatively prime to $p$. In order to show that the order cannot be $1$, you need to use the fact that $N$ itself is a $p$-group (did you notice that you never used it?) so that $g\notin N$. Once you know that, then your contradiction would follow.
As to a simpler way, it depends on your definition of $p$-group! If to you a $p$-group is a group whose order is a power of $p$, then the very simplest way is simply to remember that for any group $G$ and any subgroups $H\subseteq K\subseteq G$, you have $[G:H]=[G:K][K:H]$ (cardinal multiplication in the case of infinite indices if necessary). So $|G|=[G:1]=[G:N][N:1] = |G/N||N|$ is a power of $p$, hence $G$ is a $p$-group.
However, there are meanings of $p$-group: some authors define $G$ to be a $p$-group if for every $g\in G$ there exists $k\gt 0$ such that $g^{p^k}=1$ (that is, the order of every element is a power of $p$). Lagrange's and Cauchy's Theorems tell you that for finite groups, the two definitions coincide. But there are infinite groups that satisfy the second meaning (but obviously not the first); the Prüfer group for $p$ for example.
How do we prove the statement under this definition, for possibly infinite groups (it's also true)? Suppose $N$ is a $p$-group and normal in $G$, and $G/N$ is a $p$-group. Let $g\in G$. We want to show that the order of $g$ is some power of $p$. Look at $gN$ in $G/N$: since $G/N$ is a $p$-group by hypothesis, then there exists $k\gt 0$ such that $(gN)^{p^k} = eN$; that is, $g^{p^k}N = eN$. That means that $g^{p^k}\in N$. Now use the fact that $N$ is itself a $p$-group (under this definition) to deduce that the order of $g$ must be a power of $p$.