I agree that it is unintuitive that the Spline tool stops when it snaps to a vertex. I will create a bug report.
There are tools that may help you:
Wire Tools / Routings Tool Box / Approximate Wire
Wire Tools / Fit Spline
The Approximate Wire tool allows you to specify the number of handles you want. It creates a parametric spline with handles (if Parametrize=True), so you can also edit it interactively by moving the handles.
I guess you can also create a spline using a list of points using the Python API.