Likewise for Electrum the server should be able to see your IP address, public keys, your transaction history and UTXOs and also you Version of Electrum.
I don't think electrum sends the public keys to servers. To get the transaction history and UTXOs, all electrum needs is the list of the addresses.
Is it actually possible to connect your own node to a public electrum server?
You can run your own full node and have your own electrum server, so that you don't have to connect to the servers provided by third parties.