Is it possible for Coinbase to reverse the transaction given that the Coinbase exchange has the private keys to my ETH wallet from which the ETH was sent? I read somewhere that if I sent it from a private software wallet to which I have the private keys and not an exchange, I would be able to do this.
I believe coinbase are out of hands on that mistake. First of all its you who did execute the transaction so it was a mistake by a customer. Also if it was sent already then the transaction is final they cant just simply undo what has been did on blockchain even though they are holding your private key.
You must have read their TOS for their services. Thats why everyone isnt advise to use exchange wallet.