You are detecting Peak current and not Average Current as should be !! Where are your specs????
A BLDC fan acts like a resistive load ONLY when you average the current over a specific time interval such that there is no ripple in the Avg current measurement. As such, the fan current increases linearly with voltage above the start speed due to RPM fan load.
The storage Caps "can" provide most of the ripple current if rated you wanted that otherwise use your regulator for it and define a filter with peak ripple % vs f , as you like.
Yet your current sense amplifies peak pulse current with 10ms average which is too short an Tau or too little attenuation of peak/average current ratio. Therefore you need to know the pulse frequency and filter rejection at that freq to obtain an error of peak to average. Then understand the consequences.