Why is the calculated angle between two vectors always between $\pi$ and $0$.
Is this due to the limitations of $\arccos\theta$ or is it because angles between vectors is described to be the smaller one?
It's a matter of tradition and simplicity.
Each pair of vectors defines two angles. One of them is between $0$ and $\pi$ and the other is between $\pi$ and $2\pi$. Since their sum is $2\pi$, we only really need to tell one of the two angles, and we decide, for simplicity, to always report the smaller of the two.
There are angles of all possible degrees. In context with angles in a triangle however, we have $0\le \theta \le \pi$.