varchar(max) should allow 2GB of space. Are you sure this is what the field is set to? How are you determining the 11kb will not fit?
This works:
create table mytest (mychar varchar(max));
insert into mytest select replicate( cast( 'A' as varchar(max)), 11000);
Note there are issue with implicit conversions. http://stackoverflow.com/questions/9172516/how-to-run-a-more-than-8000-characters-sql-statement-from-a-variable