Struggling with Airdrop contract

Well, the error-message transfer amount exceeds balance says it all.

The entity executing this transfer doesn't hold a sufficient amount of tokens.

This entity happens to be your contract, so you need to make sure that your contract holds a sufficient amount of tokens before attempting to execute that function.