Why is this 'Proof' by induction not valid?
With induction, you can only prove $S(n)$ is true for all positive integers $n$. However, even though $S(n)$ is true for arbitrarily large $n$, the statement "$S(\infty)$" does not follow from induction because $\infty$ is not a positive integer.
The same proof shows that the set of all positive integers is finite:
\begin{align} & \{1\} \text{ is finite.} \\ & \{1,2\} \text{ is finite.} \\ & \{1,2,3\} \text{ is finite.} \\ & \{1,2,3,4\} \text{ is finite.} \\ & \qquad \vdots \\ & \text{and so on.} \\ \text{Therefore } & \{1,2,3,4,\ldots\} \text{ is finite.} \end{align}
By induction you have proved that for all $n\in\mathbb Z^+$, $\displaystyle\sum_{k=1}^n\frac 1 k$ is finite, which is true. This is not the same as proving that $\displaystyle\sum_{k=1}^\infty\frac 1 k$ is finite...