Maybe your original assumption about needing the original breaking block to be gone is wrong. All these events are still fired in the same game tick. So why can't you go ahead and turn all the blocks above into falling blocks even if the block in the break event isn't actually converted yet? And if that is really a problem, then in the break event just create a "list" of BlockPos that should be checked later during the tick?
I maybe found something, instead of using that syncConfig() method in onConfigChanged event try using
ConfigManager.sync(<modid>, Config.Type.INSTANCE);