Answering to your first question.
I don't think you can add a new field in the Alerts page for displaying "Node Name".Basically you cannot add new fields to Alerts page.
Coming back to your requirement on Alerts page.This is how it works.
The field "Network Object" on the Alerts page is going to display the data coming from the OID sysname for the device in question.If the SysnameOID data is blank then by default it is going to show the IP address.
You may cross check this for the device which is not showing its Node name(or Sysname) on the Alerts page.
Log into the database and look for the table Nodes.Check for the data in the Sysname field in that table.If that field is blank then it would display the IP address by default.If not then it should pick the Sysname data from that table and display in the Alerts page under "Network Object".
Going a step further you may also run a snmp walk for the device and see what is the value for Sysname OID.
To run snmpwalk you may download the tool found in the link below.
After installing,navigate to External tools-->Classic tools-->SNMP Tools-->MIB walk.This should help you to do a snmpwalk for the device in question.
Your correct that the Network Object will show the name or IP address for NPM alerts but i have APM alerts at the moment and it simply says "Disk Read Bytes per Second" or "Percent Free Space" etc which unless you hover over the Alert, you cannot see which Node the Alert has come from. This is possibly a feature request alongside point 2 above. Can these be added to the feature request list please ?