How can a "proper" function have a vertical slope?
The tangent line is simply an ideal picture of what you would expect to see if you zoom in around the point.
$\hspace{8em}$
That being said, the vertical tangent line to the graph $y = \sqrt[3]{x}$ at $(0,0)$ says nothing more than that the graph would look steeper ans steeper as we zoom in further around $(0, 0)$.
We can also learn several things from this geometric intuition.
The line is never required to pass through two distinct points, as the idea of tangent line itself does not impose such extraneous condition.
For instance, tangent lines pass through a single point even in many classical examples such as conic sections. On the other extreme, a tangent line can pass through infinitely many points of the original curve as well.
Tangent line is purely a geometric notion, hence it should not depend on the coordinates system.
On the contrary, identifying the curve as the graph of some function $f$ and differentiating it does depend on the coordinates system. In particular, it is not essential for $f$ to be differentiable in order to discuss a tangent line to the graph $y = f(x)$, although it is a sufficient condition.
OP's example serves a perfect showcase of this. Differentiating the function $f(x) = \sqrt[3]{x}$ fails to detect the tangent line at $(0,0)$, since it is not differentiable at this point. On the other hand, it perfectly makes sense to discuss vertical tangent line of the curve
$$ \mathcal{C} = \{(x, \sqrt[3]{x}) :x \in \mathbb{R} \} = \{(y^3, y) : y \in \mathbb{R} \}, $$
and indeed the line $x = 0$ is the tangent line to $\mathcal{C}$ at $(0, 0)$.
No, we don't need two vertical points. By the same idea, if the graph of a function $f$ has an horizontal tangent line somewhere, then there has to be two points of the graph of $f$ with the same $y$ coordinate. However, the tangent at $0$ of $x\mapsto x^3$ (note that this is not the function that you mentioned) is horizontal, in spite of the fact that no two points of its graph have the same $y$ coordinate.
To get a vertical tangent we need 2 vertical points...
Herein lies the error in your assumptions. A tangent intersects a curve at the point of tangency in just one point.