I think I understand what you're saying there, SmartBoy. I'd try it out if I could, but alas, the SGDK2.1 IDE doesn't work with Mono (yet, it's another story) and I haven't got a copy of Windows around to dual-boot from.
In SGDK2 it would be quite simple, in fact, since you can create the same sprite and just change one tiny little attribute (Alpha) when placing them on the map.
You would need a real player sprite, then a fake player sprite who doesn't have any of the rules but has all the same states (or perhaps only the running states?) You would need a rule to follow the player sprite, and a rule to change states when the player does. Actually, you could even make the sprites dynamic, and not worry about that second part.
If (speed > 10) -> create a 128 (out of 255) transparent sprite that follows the player (facing the same direction as the player)
if (speed > 20) -> create a 64 transparent sprite that follows the 128 transparent sprite
if (speed > 30) -> create a 32 transparent sprite that follows the 64 sprite
etc.
Then each dynamic sprite can just disable itself if it ever comes within a few pixels of the sprite it's following. Note that the following would have to be quite quick so that as the player moves perpendicular to the main axis of motion, the blur sprites don't start moving toward the player's position on a different path than how the player got there. And of course you'd only want to create those dynamic sprites once rather than every frame that the speed is > 10 or whatever number.