Does a hash function have a Upper bound on input length?
Does hashing algorithms have an upper bound in the input space?


They can, but they don't have to and it depends on their specification.


All Merkle-Damgård based hash functions do have an upper limit, because appending the message length simplifies the security proof and the backdoor-resistance of the function and they usually use a fixed-length encoding of the length.


Though it appears that MD5 (Spec RFC) kindof just ignores this and indeed accepts message of infinite length. The encoded length in this case are the low 64 bits (so it's reduced $\bmod 2^{64}$; Thanks to forest for making me actually check).

SHA-3 (Spec PDF) does not have such a limit as it's based on the sponge-construction.
Skein (Spec PDF) does have a limit of $2^{96}$ bytes.
Blake2b (Spec PDF) has a limit of $2^{128}$ bytes.