TLDR: No. As far as I know, MD5 collisions with messages of differing length have not been found. Finding such collision would certainly be feasible by brute force, and perhaps by adaptation of existing attacks.
When we take a random function with 128-bit outputs, hash $2^{64}$ inputs of one length, and $2^{64}$ inputs of another length, we expect a collision with probability $>63\%$. Under that plausible model for MD5, it's thus likely there is a collision between messages of 8 bytes and 9 bytes that we can find by hashing all 8-byte messages, and less than 1/256 of the 9-byte messages. We heuristically expect many collisions for larger messages.
But to my knowledge, there is no known much better method to generate two messages of different size with the same MD5 hash. And in practice we'd need a little more hashes to conserve memory and allow for parallelization, like $2^{66}$ hashes. That is feasible, but still sizable effort: with GPUs hashing at 40 GH/s, we are talking ≈100 GPU⋅year. And I don't know this effort was done.
We can't trivially adapt the existing attacks finding MD5 collisions at low cost. Problem is, MD5 uses the Merkle Damgård construction, in which the last hashed padded message block includes the message size and a padding, causing at least 2 bits at heavily constrained locations to differ for messages of different size, and constraining several other bits of these two last message blocks. For example if we try to find collision between 2-blocks messages, one message of length 123 bytes and 122 bytes, the last three 32-bit words of the padded messages must be
80xxxxxx 000003D8 00000000 (for the 123-byte message)
0080xxxx 000003D0 00000000 (for the 122-byte message)
That breaks any collision we might have in earlier blocks with high probability, unless taken into account by the very attack creating the collision. And as far as I know the necessary adaptation of the existing attacks has not been done. it's needed to live with ≈80 imposed bits, including at least 2 prescribed ones imposed to different values in the two blocks. That's non-trivial.
If we really wanted to search two such messages by brute force, we could use a generic method of collision search. In principle, we would define
$$\begin{array}{rl}
F:\{0,1\}^{128}&\to\{0,1\}^{128}\\
x&\mapsto\begin{cases}\operatorname{MD5}(x)&\text{ if the last bit of }x\text{ is }0\\
\operatorname{MD5}(x\|\mathtt{0x42})&\text{ if the last bit of }x\text{ is }1\\
\end{cases}\end{array}$$
Now we take a random starting point, and iterate, until finding a collision, perhaps using Floyd's cycle finding. There's a 50% chance this collision is for inputs with differing last bit, which leads to two messages of different length (16 and 17 bytes) and the same hash.
With some adaptation, we can distribute the search among several machines or parallel GPU threads. See Paul C. van Oorschot and Michael J. Wiener, Parallel Collision Search with Cryptanalytic Applications, in Journal of Cryptology, 1999 (free access).