I am a automotive climate control engineer (yes, we design & manufacture HVAC modules, not for BMW though).
If I may, I could offer a 'potential' cause of intermittent blower motor.
You say the blower runs for about 20~30 second burst at a time and rests for 15 minutes to an hour? Both with A/C on and off, AUTO mode on and off? Are my assumptions correct?
I am not certain of BMW but most of new vehicles use what is called LPM (linear power module) to control the speed of the blower motors. LPM has power transistor in the circuit as well as pretty big heat sink to dissipate waste energy. If LPM get hot (motor drawing too much current or short in LPM circuit), then it will shut itself down. LPM is solid state technology so it may bring itself back on if the temperature has cooled down. LPM is almost always located right on the blower scroll or near it. If you trace the wires from the motor, you can usually locate it within 200mm. So to summarize, motor runs > LPM gets hot > turns itself off > LPM cools down > turns itself on > motor runs > LPM gets hot > get the pattern?
Now let me ask a few questions.
1. Does the fan always start up when you 1st turn it on (after being off for more than an hour)?
2. Does it happen year round or during certain season(s) only?
3. Does the fan's on-off pattern cycle faster in warmer weather than in cold weather?
4.. When the fan starts up, what is the blower speed setting? How fast is the blower operating (full speed every time or according to blower speed setting)?
5. Have you checked the fuse (I know, this is silly but got to eliminate the obvious first)
6. Set the blower at LOW speed, then measure the time the blower motor stays on and off. See if there is pattern. Then set the blower to MED speed, then measure the same. Then set the blower to MAX speed, then repeat. See if there is a pattern. eg. 30 seconds on 300 seconds off, 28 seconds on 315 seconds off, etc.
I hope this offers some idea on narrowing the guesses. Good luck and let me know how it turns out, eh?