Mechanical auto-unblocking mechanism
I've found a solution that's actually pretty easy, but took some time to try out because I don't have the parts I need at hand.

The solution




Input from motor(s).
A differential to split up the input-movement to two shafts. Since I don't have a Technic Gear Differential at hand I had to built my own for the test.
One of the differential-outputs becomes our "unblocker". it's chocked off by a rubber band to have more resistance in moving than the "normal" output (called "output" from now), so it will only move if the output is blocked completely (or gets a high resistance). Important: make sure to block this as much as necessary but as few as possible.
A "gear on a stick" that will only get in contact with the bigger gear on the output on a small range of its rotation. Important: this is the unblocker - it has to have a "stronger" transmission than the output to be able to turn the output backwards while overcoming its own resistance added by the rubber band.
The "normal" output to move whatever you want it to.


Explanation

As long as there is less resistance on the output than on the unblocker, only the output will move. if the output is blocked, the unblocker will start rotating and turn back the output (just a bit - at the point where the "gear on a stick" gets in contact with the bigger output-gear). if this dissolves the problem, the output starts rotating again.

Potential Improvements


Use a Technic Gear Differential instead of a (much bigger) custom-built one
Use a Tooth Clutch instead of a rubber band to brake the "unblocker"
Use a Gear with offset Axle Holes instead of a "gear on a stick"


See it working


On YouTube
Improved Version on Youtube


UPDATE: i got a Technic Gear Differential today, so i could build a smaller (and better working) Version of this. You can watch it on YouTube.