4.999... = 5
Since there is no smallest number, it is not possible to represent the smallest number greater then something. Dealing with such concepts means you must specifiy intervals. The notation [1,2) implies all numbers greater then and equal to 1 but less then but not equal to 2. 1.999... = 2 so it is not included in the above interval, but any finite number of 9's is. Likewise (1,2] is the interval which contains all numbers greater then 1, but not 1, and less then or equal to 2. This is the concept of an open interval, that means the interval does NOT contain its endpoint.

5.000...1 where the elipsis represents an infinite number of 0s does not represent a real number. In that context it means a finite but unspecified number of 0s because by the definiton of real numbers the 1 MUST occupy a position which corresponds to some integer therefore there must be a finite number of 0s.

So our assumption that "y is the greatest number less than x" was false. Since there was no restriction placed on y (beyond being the greatest number less than x), there cannot exist a number that is the greatest number less than x.

As integral mentioned, 0.499... is, by definition, numerically equal to 0.5 (so, in particular, it cannot be less than 0.5)

I suppose there should not be any number like that in existence according to an axiom which states that between any two reals there is another real number -> so between 5 and 5+eps (eps small as you want it to be) there is always another number.

Though, another question arises - is then 4.999.... same as 5 because 4.999... is larger than any other number smaller than 5?