I know this thread is a bit old, but I had the same problem: rules which fired exceptions etc. because bindings haven’t been loaded yet. That also let peak the CPU load extremely after a reboot and made the system almost unresponsive.
I think I found a clean solution to this:
Increase the start-level of the org.eclipse.smarthome.model.rule bundles
By default most bundles have start level 80, at least in my installations, all bindings and the rule engine have that value. By increasing the start level for the 3 rule bundles to 90, the problem goes away.
bundle:start-level org.eclipse.smarthome.model.rule 90
bundle:start-level org.eclipse.smarthome.model.rule.ide 90
bundle:start-level org.eclipse.smarthome.model.rule.runtime 90
The change seems to be permanent. Of course updating openhab to a newer version most likely would reset the values again.
Is there any side-effect I haven’t considered here? Could this be made the default for the installations?