How to trigger a gateway timer to trigger immediately but no more than four times per minute?

The tag system is fully multithreaded and only locks what it needs, not what some queuing algorithm needs. You will suffer trying to do this with a memory dataset tag.

Use a proper java concurrent queue. Set it up so that only a single copy is ever constructed (using system.util.getGlobals() and .setdefault()). Run a timer script that polls this queue, with a timeout the same as the fastest pace you want to run.

Only place python or java native data types in such a queue. (I usually use python tuples.)