Getting problem in triac based fan speed control
Why only 100us pulses?
It sounds like the issue is that when you start at full speed with a 100us pulse at zero crossing there is no AC voltage present - as a result even though there is a trigger the triac does not start conducting.
If you start at a lower speed, eg 50%, there will be significant AC voltage across the triac so it starts conducting and continues until the current drops to zero.
Once started at low speed, even if you change to triggering for full speed with the trigger at zero crossing there will still be current flowing because of the inductance of the motor (it could be as much as 90 deg out of phase).
I think the solution would be to apply much longer gate trigger pulses; maybe just a couple of milliseconds so that the trigger is still present when the voltage rises to the point that the triac can trigger.