I've got two questions cause I'm really not a technical guy.
1 - Are the inputs sizes based on the number of addresses from which the funds are taken?
2 - If yes, is there a way to stop the sending to a different address at every transaction? For Electrum or even my hardware wallet, every time I want to receive BTC they suggest a new address and I don't know why. On the hardware wallet it's not even possible to get back the old addresses all I can do is get new ones...
1. Not really. You can have 10 inputs from the same adress, and it will increase the size of the transaction with the same amount as if all the tx were taken from 10 seperate adresses (if were assuming same type obv).. (?) https://bitcoin.stackexchange.com/questions/1195/how-to-calculate-transaction-size-before-sending-legacy-non-segwit-p2pkh-p2sh
So the less adresses (rather inputs) used = more consolidated = lower fees most of the time.
2. I don't think this matters per se. As long as all the inputs are all consolidated in the new adress, there is no issue. If they're not and instead all spread out over "new"/different adresses, then this is indeed a problem.
Note that you can always reuse an adress if you'd like to do so. I'm not sure how it works with hardware wallets, but it's not like they'll all of a sudden "throw away" the private key for said adress.
2. Or are you talking about sending the change to a new adress each time? Afaik, you can change that, but that also won't matter much, since the inputs will stay the same.