Here's a proof I learned from some notes of Richard Melrose. I just noticed another answer was posted while I was typing. This uses a different characterization of compactness so hopefully it is interesting for that reason.
First, I claim that a set $K\subset H$ of a Hilbert space is compact if and only if it is closed, bounded, and satisfies the equi-small tail condition with respect to any orthonormal basis. This means that given a basis $\{e_k\}_{k=1}^\infty$, for any $\varepsilon>0$ we can choose $N$ large enough such that for any element $u\in H$,
$$\sum_{k>N} |\langle u , e_k \rangle |^2 < \varepsilon.$$
The main point here is that this condition ensures sequential compactness. The proof is a standard "diagonalization" argument where you choose a bunch of subsequences and take the diagonal. This is done in detail on on page 77 of the notes I linked.
With this lemma in hand, the proof is straightforward. I repeat it from page 80 of those notes. Fix a compact operator $T$. By definition [this is where we use a certain characterization of compactness] the image of the unit ball $T(B(0,1))$ is compact. Then we have the tail condition that, for given $\varepsilon$, there exists $N$ such that
$$\sum_{k>N} |\langle Tu , e_k \rangle |^2 < \varepsilon.$$
for any $u$ such that $\| u \| < 1$.
We consider the finite rank operators
$$T_nu = \sum_{k\le n} \langle Tu , e_k \rangle e_k.$$
Now note the tail condition is exactly what we need to show $T_n \rightarrow T$ in norm. So we're done.
Just take $P_n$ to be the projection into the first $n$ terms, i.e. $P_n:(a_0, a_1, \dotsc)\mapsto (a_0, a_1, \dotsc, a_{n - 1}, 0, 0, \dotsc)$.
Then $P_n$ is a finite rank operator, because its image is $n$-dimensional. And it's routine to check that $P_n(y)\rightarrow y$ for any $y\in \ell^p$.
However, I think your proof for (a) is not quite correct. The problem is that your $N_0$ depends on the choice of $y$, while later you used it for an arbitrary vector (namely $T(v)$) in $W$. The "fix" is to use the compactness assumption of $T$, so that a universal $N_0$ can be achieved.
Best Answer
I think it is simpler to prove this without resorting to sequences.
Key result: In a complete metric space, a set is relatively compact iff it is totally bounded.
Let $B=B(0,1)$ be the open unit ball.
To show that $TB$ is compact, it suffices to show that it is totally bounded.
Choose $\epsilon>0$, and $n$ such that $\|T-T_n\| < \frac{1}{2} \epsilon$. Since $T_n$ is compact, $T_n B$ is totally bounded and hence has a finite $\frac{1}{2}\epsilon$-net $\{t_1,...,t_k \} \subset T_nB$.
I claim that $t_1,...,t_k$ is an $\epsilon$-net for $TB$. Suppose $t \in TB$, then $t=Tx$ for some $x \in B$. Then $\tilde{t} = T_n x$ satisfies $\|t-\tilde{t}\| < \frac{1}{2} \epsilon$. Since $t_1,...,t_k$ is a $\frac{1}{2}\epsilon$-net for $T_nB$, we have $\|\tilde{t}-t_i\| < \frac{1}{2} \epsilon$ for some $i$. Hence $\|t-t_i\| < \epsilon$. Hence $TB$ is totally bounded and so $T$ is compact.