IRReceiver.decode() stops receiving values after DC Motor reaches certain speed

From your photo I can see that you are powering the DC motor from the Arduino power and this is NEVER a good idea. You are lucky if you have not burned something. I'm not entirely sure, but you probably have a problem with enough power and / or noise from the DC motor that confuses the sensor - these long cables are very nice antennas. You didn't say anything about the DC motor - operating voltage and maximum current, for example.