According to SQL Server 2008 help:
Requires CREATE TABLE permission in the database and ALTER permission on the schema in which the table is being created.
I just tested this by using EXECUTE AS in a test database, and I was able to create a table in the schema that had ALTER permission, but not in the dbo schema (for which I didn’t grant ALTER permission). So as long as you haven’t gotten too liberal with ALTER permission on schemas, this should be the way to do it.