The only way to restrict the spell is to actually remove it on entry to a map.
Its workable, check the spell level, remove it, and on exit from the map, give the spell back and level it up.. all done with HLSCRIPTCMD commands. Not very pretty though.