If you put a <wait> at the end of the gearset change line, it should work. What's happening is that the gearset takes a moment to change but the macro continues immediately, trying to activate the skill before the change has actually happened. The reason you only get the error when switching to and from fisher (and likely any non-gatherer) is likely because you have the truth skills set as cross class skills for both of them, so they are still available before the switch.