How to permanently disable app relaunch and window restore in Mojave on reboot?
https://superuser.com/questions/338004/prevent-mac-from-reloading-apps-after-restart

What you are looking for is to disable ApplePersistence feature, which can be done with:
defaults write -g ApplePersistence -bool no