There is a limit for free space. It's not only used for scripts, but say if you insert new sprites, music, expand maps, etc. The limit for the GBA games is 0xFFFFFF, it can be expanded but it's unlikely you'd need to.
The flags between 0x200-0x2FF
are the ones for the ingame events. You can use them of course if you remove the events they are associated with (
list is here). The others are for things like trainer flags, hidden items, or temporary flags and should not be used. Safe variables are between 0x4011-0x40FF, but most of these are also used for ingame events. I'd recommend reading the link above, it has a lot of details on flags and vars.