If every convergent subsequence converges to $a$, then so does the original bounded sequence (Abbott p 58 q2.5.4 and q2.5.3b)
A direct proof is normally easiest when you have some obvious mechanism to go from a given hypothesis to a desired conclusion. (E.g. consider the direct proof that the sum of two convergent sequences is convergent.)
However, in the statement at hand, there is no obvious mechanism to deduce that the sequence converges to $a$. This already suggests that it might be worth considering a more roundabout argument, by contradiction or by the contrapositive.
Also, note the hypotheses. There are two of them: the sequence $(a_n)$ is bounded, and any convergent subsequence converges to $a$.
When we see that the sequence is bounded, the first thing that comes to mind is Bolzano--Weierstrass: any bounded sequence has a convergent subsequence.
But if we compare this with the second hypothesis, it's not so obviously useful: how will it help to apply Bolzano--Weierstrass to try and get $a$ as the limit, when already by hypothesis every convergent subsequence already converges to $a$?
This suggests that it might be worth trying to find an argument where we get to apply Bolzano--Weierstrass in such a way that we get a convergent subsequence with a limit different from a; and so obtain a contradiction. In other words, combining the given hypotheses with our basic tool (Bolzano--Weierstrass), it seems that going for a proof by contrapositive/contradiction might be a fruitful approach. (Of course, we don't know for sure until we're done $\ldots$; but I'm trying to describe a thought process which would suggest the approach via the contrapositive.)
Contrapositive also suggests itself if we just write down what we are trying to do:
We want to show that $(a_n) \to a$.
If it does, great! We're done.
If not, then by definition of convergence to $a$, there is an $\epsilon_0 > 0$ and a subsequence $(a_{n_k})$ of $(a_n)$ such that $|(a_{n_k}) - a| \geq \epsilon_0 $ for all $k$. (Deriving this step is the content of the paragraph that begins "Suppose ... " and finishes "Stated in plainer language ... ", together with the first sentence of the next paragraph.)
When you're trying to construct a proof, and you don't see what to do yet, it's always a good idea to write down the definition of what you're trying to prove, and its negation. Then you can look at them and see which one meshes better with your given hypotheses.
Here, as I said, there's no obvious mechanism to directly derive that $(a_n) \to a$. But if we assume the negation, by its very definition it gives us a subsequence, and we can apply Bolzano--Weierstrass to this subsequence. (You might ask why we don't apply Bolzano--Weierstrass directly to our original sequence. But as I already wrote above, this won't give anything. But our subsequence $(a_{n_k})$ can't converge to $a$ --- it always stays a positive distance $\epsilon_0$ away from $a$. So now we can get some mileage from Bolzano--Weierstrass.)
As to why we get a sub-sub-sequence, that just comes up naturally when we apply Bolzano--Weierstrass (which produces a subsequence) to the negation of the statement that $(a_n) \to a$ (which already prodced a subsequence).
You shouldn't focus too much on the iterated sub's! Instead, think in terms of procedures: first we applied the negation of the statement to be proved (and that gave us a subsequence), then we applied Bolzano--Weierstrass (and that gave us a subsubsequence).
You may want to look at some of Timothy Gower's posts on proofs in real analysis. (My discussion here is to quite a large extent inspired by his view-point. The link is to a fairly recent post, but he has some earlier posts too; see here for some. In particular, I like this one. With some googling you should be able to find more, I think; he is very interested in theorem-proving as a process, and has written a lot about it in a way that might help you.)
The other answer is thorough and very well-explained. This answer has the purpose of being a quick reference for someone who stumbles in this problem.
There is a recurrently useful lemma in analysis (and topology), which is:
Lemma: Let $a_n$ be a sequence in a space $X$ and $a \in X$ such that for every subsequence of $a_n$ there is a subsequence that converges to $a$. Then $a_n$ converges to $a$.
Proof: Suppose it does not converge to $a$. Then, we can find a neighbourhood of $a$ and a subsequence of $a_n$ such that it never enters the neighbourhood. But this subsequence can have no subsequence converging to $a$, a contradiction. $\blacksquare$
Now the exercise:
Solution: Let $a_{n_i}$ be a subsequence of $a_n$. By Bolzano-Weierstrass, there is a subsequence of $a_{n_i}$ which converges. By hypothesis, it converges to $a$. Applying the previous lemma yields the result. $\blacksquare$
Note that the previous argument holds for every compact space. In particular, also for $[-\infty, +\infty]$.