Who pays miners fees? I was under the impression that miners earned coin from the blockchain (creator/owner/pool) or "Created" the coin they are paid??
But I see now that fees are involved to buy/sell/transfer.

For example I had $21 dollars left in in my wallet and wanted to transfer it
to GDAX, I was not able to because of insufficient funds to transfer.

Can someone explain how this works. (seems very expensive)
It is quite simple, you pay the miner a fee as part of your transaction to encourage the miners to include that transaction in a block. Block space is limited so larger transactions in size rather than value have to pay more fee.