Most of what you listed won't affect idle speed. In most applications a temperature sensor is extremely reliable because it has only one simple component inside, but Ford had a lot of trouble with their coolant temperature sensors in the early '90s. I've had some where you could connect an ohm meter and watch the reading bounce all over the place, most likely due to a broken connection inside. This was common enough that it was the first thing we suspected, especially on the 3.0L engines.
The way to find this on any engine and brand is to connect a scanner to view live data, then watch what is changing or doesn't look right. For example, when the engine has been running for a few minutes, you know the coolant temperature sensor had better not be reading minus 40 degrees.
The varying resistance of the sensor will cause the signal voltage to change as the engine temperature changes. The sensor is fed with 5.0 volts, and under normal operating conditions it will draw that voltage down to between 0.5 and 4.5 volts. As long as the voltage stays between those values, even if it's wrong, no diagnostic fault code will be set. Codes are set when the voltage goes outside that range, and most of the time that means a problem with the wiring or connector, ... Except on your engine. To identify a defective sensor, watch the signal voltage on the scanner. You'll see it bouncing around, and the corresponding temperature it is indicating will be bouncing around too. That signal voltage plays an important role in the fuel metering calculations. Liquid fuel doesn't burn. It has to be a vapor to burn and produce power. We used to use a choke on older carbureted engines to dump a lot of fuel into it in hopes a big enough percentage would vaporize and burn. Likewise, we have to add extra fuel in fuel injected engines when they're cold. When the coolant temperature sensor indicates a temperature much colder than the engine actually is, too much fuel will be commanded resulting in the poor fuel mileage.
Idle speed is also increased when the engine is cold, but if the coolant temperature sensor's readings are bouncing around, the computer may think the engine is warmed up already before it really is. That can result in too little fuel, and low power, poor throttle response, or a hesitation on acceleration.
There are other things that can cause the symptoms you listed, and those would be more likely on other engines, but for yours, look at the coolant temperature sensor first.