Why is sp_update_alert failing?
Verify that the SQL Server Agent account has the necessary permissions to query the performance counters DMV (sounds like your agent account has recently been changed). According to the documentation:


  Requires VIEW SERVER STATE permission on the server.


So:

GRANT VIEW SERVER STATE TO [SQL Agent account];


Also make sure that as that login (or any login with VIEW SERVER STATE, such as sa), you can see results come back from the DMV. I have heard of many cases where the performance counters simply come up empty in SQL Server, and this dates back to SQL Server 2000 with sysperfinfo. Several sources suggest the following as a solution from the command line (followed by a reboot):

lodctr "&lt;path to binn&gt;\binn\sqlctr.ini"


Of course Microsoft closes most of these reports as no repro (which doesn't surprise me, as I haven't seen this symptom directly, and would have no idea how to reproduce the issue).


Missing sys.dm_os_performance_counters
sys.dm_os_performance_counters only showing XTP-related data (fix was applying a CU)


Also some advice in these threads, which you are welcome to try (these are quite long-standing and I'm not going to try and summarize and repeat the info here):


What should we do when the sql server performance counters are missing
How to revive SQL Server 2008 R2 performance counters?
sys.dm_os_performance_counters empty
Empty Sysperfinfo table and blank sql performance monitor counters