Real numbers are defined as an equivalence class such that if the differences of two infinite sequences of rationals tend toward zero, then they are equal. The difference between 0.999... and 1.000... clearly tends towards zero as it heads of to infinity, and so they are equal.
If you want to argue that it doesn't then you have to come up with some other definition for numbers which have an infinite decimal expansion.
(Technically, of course, 1 is a rational number, but if you're using 0.9999... to represent it, you're using a real number representation, so you're bound by the definition)