You should create a flood protection in your addquote command.

For example:
on *:text:!addquote*:*: {
  if ($2 == $null) { .notice $nick You need to include a quote to add. }
  elseif (%addquote.flood.prot) { .notice $nick Please wait 5 minutes for the next quote due to bandwidth. }
  else { set -u300 %addquote.flood.prot | write quotes.txt $2- }

Edit: I see this doesn't do everything you want, with that 'allow' part. But at least you will stop that spammer.
Maybe someone else can help you expanding it for all your needs.