Yes there is a way to do that. It is done by scripts and a smart contract, script feeds the address list to smart contract in bulk packages, and smart contract sends them with the standard send command (looped).
The avarage cost of airdropping tokens is 0.1ETH per 1000 addresses ( I'm talking about gas cost only ). So for your examplary 5000 addresses, you'dpay 0.5ETH gas fee.
I agree with you! To do this with scripts and a smart contract, the script provides the address list for intelligent contracts with bulk packages, and the smart deal sends them with the standard send command (looped ). The problem is how to calculate costs. It's not too high but many investors are still wondering.