I'm not aware of any such limitation; sprite graphics supposedly can mingle with all of the rest of your data, because each sprite bitmap can be put at any address, in increments of 32 bytes.
Ok, not sure where I got that idea.
Edit: It was this bit about sprite rendering order a long with a problem in my code that gave me the idea that sprites had to be at the end of VRAM.
Rendering Priority The sprite memory location dictates the order in which it is rendered. The sprite whose attributes are at the lowest location will be rendered in front of all other sprites; the sprite at the highest location will be rendered behind all other sprites, and so forth
Another thing is, you don't have to reserve the entire tile bank if you're not going to use all of it. Each tile in the tilemap can use one of 1024 tiles from the tile bank in 2/4/8 bit mode, but if you're only ever going to use 256 of those tiles for example, the memory for tiles 256-1023 can be reused for something else.
This I knew or to be more precise I never considered otherwise : )
The way TilemapEd stores tile data is only the tiles that are used.