I keep spare fuel for my Honda 2HP in soda bottles. When the engine runs dry, one soda bottle goes into the tank - no overflow, no mess. Fill the soda bottles in a stable environment.
Those new 'no spill' fuel tank spouts are dimensionally unstable. They work fine when new, but some of the parts swell when exposed to fuel (gas? alcohol?) and the spout will fail to shut off. Notice how the name of the companies selling those things keeps changing? Perhaps that's the latest way of limiting product liability.