Why isn't the ordinary string comparison a valid well ordering of the real numbers? That is, write the number as a string (possibly infinite in size):
a = "1.414"
b = "1.41421..." sqrt(2)
Then use some string comparison. If the numbers are distinct they should have a distinct decimal representation at some finite position.