.999_ is less than 1 by an infinitely small difference, but a difference nonetheless.
No, it isn't smaller than 1. Several proofs have been posted already.
See also 0.9 Recurring, in Wikipedia.
The misconception usually seems to stem from the idea that the decimal system has only one representation for a number. There's no question that 1.0 is the *preferred* representation, but 0.9 recurring is the same number with a different representation.
Another way to look at it: there is no "infinitely small" real number that you could add to 0.9 recurring to get one. If you have any small number greater than zero, then there is a smaller number between that small number and zero as well. The real numbers are continuous.
This is also known as the intermediate value theorem.