I'm assuming that Electrum spends fund from the smallest funded addresses first. Is that correct.
Nope, Electrum uses random addresses to maximize your privacy which is the default behaviour in Electrum.
Electrum source code class CoinChooserPrivacy(CoinChooserRandom):
"""Attempts to better preserve user privacy.
First, if any coin is spent from a user address, all coins are.
Compared to spending from other addresses to make up an amount, this reduces
information leakage about sender holdings. It also helps to
reduce blockchain UTXO bloat, and reduce future privacy loss that
would come from reusing that address' remaining UTXOs.
Second, it penalizes change that is quite different to the sent amount.
Third, it penalizes change that is too big.
"""
which will increase the size of the transaction more so if you want to reduce the use coin control feature as mentioned by the above users.