Exec node - help with how it spawns

I have not read your full post but did see you were having issues with issuing amixer commands from an exec node.

I faced a similar issue and after much digging found that adding the below Env Var to the environment before launching Node-RED solved it.

XDG_RUNTIME_DIR=/run/user/$(id -u) node-red

If you run Node-RED as a service, then you will need to identify the user (often this is pi) and explicitly set the value e.g.

# get the uid of user pi
id -u pi
# outputs 1000

modify the service

sudo systemctl edit node-red.service

Then add:

[Service]
Environment=XDG_RUNTIME_DIR=/run/user/1000