Ok. Here is the math. Let's assume a perfectly elastic rebound of the air from the sail, which is the best you can do.
Fan sends a mass of air ##\Delta t\dot m## forward toward the sail at speed v. The (rearward) impulse to the boat from this is ##-v\Delta t\dot m##. This same mass of air strikes the sail and bounces off the sail at -v imparting a forward momentum of ##2v\Delta t\dot m## for a net forward momentum of ##v\Delta t\dot m##. Now if the fan had stopped, you would be fine. But it doesn't stop. It keeps pushing air forward. So, meanwhile, the fan has scooped another packet of air and is sending it forward at speed v creating another (rearward) impulse of ##-v\Delta t\dot m##. Net impulse = 0.
It might be easier to see with balls being scooped up and flung at the sail and bouncing back off the sail. So long as there is another ball that has been propelled toward the sail for every ball that is striking the sail, the net impulse to the boat will be 0. If not, perhaps you can explain where I am in error.
AM