One thing I've noticed in the latest version of Solarwinds (11.0) if you convert a node from "ICMP only" to "ICMP & SNMP" that it will change it from using ICMP for node up/down status to SNMP. The problem with this is that SNMP is polled at a much slower rate than ICMP. This could be your problem. To check, open up a node that you're having this problem with, go to "List Resources" and under "Status & Response Time", make sure it's set to "ICMP (Ping) - Fastest", this will make sure you're getting the fastest up/down node status updates.
Also, under "Polling Settings" in the settings webpage, scroll to the bottom and make sure the "Node Warning Level" is set to something somewhat low, I think 120 seconds is default which is probably good. This is how quickly it will mark a device down after it has stopped responding...
Which "polling" are you referring to that's set to 120 seconds above? The one I'm assuming you're referring to is at the very top of the same page I just referred above, under "Polling Intervals". The "Default Node Poll Interval" works in conjunction with the "Node Warning Level" I referred to above to have a node show up on the web page as being down. This value tells it how often to poll each node. So, if you have both set to 120 seconds, it should mark a node as being down between 121-240 seconds after it first goes down. ie: if the node goes down 1 second before it gets polled, the next poll will happen 120 seconds later. If it is still down, the "Node Warning Level" will tell it to display as down 120 seconds after it discovered it through polling.
Alerts are somewhat separate from this, if you have it alerting X seconds after it declares it down, that would be in addition to these timers...
cnorborg has great points to consider here. Specifically the "Node Warning Level"and "Default Node Polling Interval" settings. For the issue with the status updating, those settings are likely your culprits.
I would however like to add that you should check these tricksters located on the Trigger and Reset tabs of your alert configuration:
These settings can delay the triggering and resetting of an alert even though NPM has updated the node's status.