Why does the limit get reached? It is usually a combination of these three factors:

CS 1.6 servers often force players to download custom models, sounds, or sprites. If a file is corrupted or incompatible with your game version, the game will hang while trying to load it into memory.

Use AMXX debug plugin or log:

new num_models = 0, num_sounds = 0;
for (new i = 0; i < MAX_MODELS; i++) if (g_model_precached[i]) num_models++;

Or examine server console after map command: engine prints counts if developer 1 is set.

You need to be ruthless. Open your plugins.ini file and ask yourself: Does this plugin use models or sounds?