Agreed. The jump from real to complex numbers is about as difficult to explain as the jump from natural numbers to integers. Integers are the numbers you need for "subtracting numbers gives you a number". Complex numbers are the numbers you need for "factoring polynomials with numeric coefficients gives you numeric roots". There's a similar argument for real numbers that you hinted at, but I don't understand it well enough to give a simple explanation for it, so I pretty much always hand-wave over it.
For reals, it's "Real numbers are the numbers you need to ensure every convergent sequence of rational numbers has a terminating point"
Convergence is determined in the "Cauchy" sense by having a vanishing distance between subsequent sequence entries, so as not to rely on the (potentially nonexistent) limit.