sv_maxspeed controls the max allowed speed for clients. However if the client is not set a speed value it won't affect game-play. If the client is set a speed (regardless of the value) it would affect the "global" speed of that player, meaning he/she would have the same speed no matter the weapon he/she holds.
That speed fix is there so that amx_speed would work for higher values when setting a client speed.
If you want to by-pass that then you sould either NOT use amx_speed or recode that process.