grant select in just one DMV instead of grant VIEW SERVER STATE
I think you can wrap the select against the specific DMV in a stored procedure and then use Execute As to elevate the permissions.
whether you choose to sign the SP with a certificate, execute as SA or as Owner is something you will need to determine according to your own security needs.