Could you try something like:
/etc/init.d/network restart
or
/etc/init.d/firewall restart
when ever one of the hotplug scripts wedges itself the rest of the bunch is not processed anymore, and sometimes manually runniing these can help.
PLEAS NOTE, I am typing from memory, so the actual commands to restart the firewall might be different.