I am having this exact same issue. Existing nodes are working as expect.
I am adding a new node this morning and as you very nicely put above getting the same error:
Warning: Unable to fetch my node definition, but the agent run will continue:
Warning: Error 500 on SERVER: Server Error: Failed to find bld-b-0001-la.domain.com via exec: Execution of ‘/etc/puppetlabs/puppet/node.rb bld-b-0001-la.domain.com’ returned 1:
Info: Retrieving pluginfacts
Info: Retrieving plugin
Info: Retrieving locales
Info: Loading facts
Error: Could not retrieve catalog from remote server: Error 500 on SERVER: Server Error: Failed when searching for node bld-b-0001-la.domain.com: Failed to find bld-b-0001-la.domain.com via exec: Execution of ‘/etc/puppetlabs/puppet/node.rb bld-b-0001-la.domain.com’ returned 1:
Warning: Not using cache on failed catalog
Error: Could not retrieve catalog; skipping run
My config is the same as yours above.
I am running a slightly old puppet server:
[root@puppet ~]# rpm -qa | grep puppetserver
puppetserver -5.3.3-1.el7.noarch
Also over the last 48hrs facts and reports have stopped reaching foreman server. I check the existing node agents, they are successfully running very 30 minutes still.