Since CCR does not own the dbo schema, you must give permission to ALTER it, too.
GRANT ALTER ON SCHEMA::dbo TO ccr;
However, you probably want to create a role, given the permissions to the role, and make ccr a member of the role. For instance:
CREATE ROLE ModifyTable;
GO
GRANT CREATE TABLE TO ModifyTable;
GRANT ALTER ON SCHEMA::dbo TO ModifyTable;
GO
EXEC sp_addrolemember 'ModifyTable', 'ccr';
GO
REVOKE CREATE TABLE FROM ccr;
Now, because a user has ALTER permissions on the schema, he/she can affect existing objects. So you'll have to build a DDL trigger to restrict the role to just being able to touch tables. There are examples of this in the forums and the scripts if you do a search.
K. Brian Kelley
@kbriankelley