Is there a lower limit on message length for signature?
The lower limit is a single byte.  Ed25519 is not defined for units smaller than a byte, but if it were, there would be, in principle, no security issue with signing a single-bit message: the expected cost of forgery on a message of any length, from a bit to an exabit, remains near $2^{128}$ and therefore well out of reach for humanity.