elect eng is so right when he talks of noise as being a possible problem. If you only need a bandwidth of a few tens of Hz then take your original signal pass it through an op amp filter with a gain of a few hundred at DC and put a capacitor in the feedback loop to bring the gain down after, say 50Hz. Then you will have a sensible level, low frequency, clean' signal for your Schmitt to look at. You can use a chip with two op amps on it so it won't take up much room.
Why use an amp plus the Schmitt? The Schmitt, being non linear, has a hard job to do the amplification and the decision making all in one go. The op amp can do some tailored filtering at the same time, too. Ideally, I guess you could say that the one circuit could do it all but the noise consideration (plus actually getting it to work) makes adding an op amp a better bet.
What is the source of your 5mV signal, btw?