Possibly (probably?) fuel
Tank vent clogged.
Pickup tube partially clogged.
Partially blocked fuel filter
It is getting enough fuel
when first started (i.e. cold) but by the time it is warm, the engine
is trying to suck fuel but can't get enough. It doesn't need much fuel to rev in neutral.
To confirm, try providing a seperate temporary fuel supply to the engine
. Simply a container of clean fuel and a hose.
Might be something else though