I don't believe the permissions are that granular; as i understand it, once you grant ALTER, that's ALTER any object.
I believe you can only do by granting ALTER, and then restricting events via a DDL trigger in each database; i posted a complete solution in another post for a similar issue, where someone wanted to restrict a group to create/alter views, so the solution would be easily modified for your issue.
see if this thread helps:
http://www.sqlservercentral.com/Forums/Topic1241211-391-1.aspx
Lowell