that program name and pid is data provided as part of the log written by the application, so the application can lie about both.
However,fixing this doesn't require making changes that are nearly this drastic.
systemd is already planning to create a new container for each application (with cgroups, etc), have it create a new filesystem namespace as well with a different /dev/log and the existing modern syslog daemons (rsyslog and syslog-ng) can record which container the log came from.