One possibility on an older system is that there is a build-up of dirt or oxidation on the pins and contacts in the fan connector. You may be able to "scrub" this off with a simple trick. With your system off and unplugged, take that CPU cooler fan's connector over to the CPU_FAN header, plug it in and unplug it several times, then leave it plugged in. This may clean its surfaces.
FYI, older fans with THREE pins have their speed controlled only by feeding them a reduced Voltage from header Pin #2. It may vary from 12 VDC for max speed down to 5 VDC for min speed without stalling. The newer design of 4-pin fans uses a different means of speed control. Such fans get a constant 12 VDC supply from Pin #2 and then a new PWM signal from Pin #4. The fan itself has a special chip that uses this PWM signal to modify flow of current from the 12 VDC supply line through the windings to achieve speed control. On your mobo, the CPU_FAN header can ONLY use the new PWM Mode of signals, so a 4-pin fan connected there WILL have its speed controlled that way. But if you plug in there a 3-pin fan it always will run full speed. The mobo CHA_FAN headers have 4 pins, too, but they are designed to allow YOU to specify (using options in BIOS Setup) whether they should use the new PWM Mode of signal for a 4-pin fan or the older DC Mode (reduced Voltage) to control speed of an older 3-pin fan.
Irrespective of control signal MODE setting, all fan headeers accept the fan's speed signal sent back to the header on Pin #3. If your BIOS Setup screen for any header shows NO speed, that signal is not reaching that header. Assuming the fan actually is running, then there's something stopping the signal. That is why I suggest the "scrubbing" attempt.
There is another option in fan headers that can cause your problem - the fan PROFILE setting, with options of Standard, Silent, Turbo, or Manual. This is the strategy it uses to determine what speed signal should be sent to the fan, depending on what temperature the related sensor shows. It is separate from which type of signal is sent. Normally this ought to be set to Standard. Silent sends a fixed low-speed signal, and if it is too low the fan will stall. Manual allows YOU to set your own version of "fan curve" relating speed to temperature, and that also allows you to set the minimun speed at low temps too slow. So check that and ensure it is set to Standard.
Now, do this simple inspection thing to verify something. Open your case with the power off so you can see the fans clearly. The normal start-up operation for ALL fans is that they start immediately at full speed, then after 5 to 10 sec they slow down to the speed actually needed. This ensures that the fan does start up. So push your start button and watch the fans. Do they ALL start up fast right away, then slow down? If they do, the fans themselves are just fine. If any fan then stalls, that is because the header is telling it to run to slow.