Coinbase pays the fee for you. My guess is that they believe that paying the fee themselves keeps their customers happy.
How the fee is handled is up to the wallet application. If you tell the wallet to send 1 BTC and the fee is 0.0002, a wallet might send 0.9998 BTC for a total of 1 BTC, but most wallets send 1 BTC for a total of 1.0002 BTC.
Electrum will automatically calculate a fee for you. The calculation is based on the same rules that are used by most nodes. Adjusting the amount may change the amount of time it takes to confirm the transaction. Using the value that electrum suggests is sufficient as long as electrum is kept up-to-date (because the rules change occasionally).
AFAIK, all wallets calculate a fee for you and some don't let you adjust it, so switching to another wallet won't change anything.