Копать в сторону MPM worker.
Если продолжать использовать prefork:
MaxCLients вычислить на основании наблюдений сколько в среднем потребляет каждый процесс, так чтобы MaxClients * AvgMemoryPerProcess < TotalFreeMemory
StartServers, MinSpareServers, MaxSpareServers,ServerLimit установить равным MaxClients
Это уберет форки новых процессов (Так ли вам необходимо уменьшать размер используемой памяти если запросов немного?)