Eu diminuiria a quantidade de espaço de troca disponível. Atualmente, as instalações típicas tentam alocar o máximo de trocas possível com a memória física (ou às vezes duas vezes mais). O problema com isso é que quando algo dá errado, o sistema entra em uma espiral da morte de tentar "embaralhar" as coisas da memória para o disco, e para trás, e ele começa a fazer assim muito do que ele não tem tempo para responder para entrada do usuário.
Nos bons dias, processos inteiros eram trocados para o disco (e vice-versa), portanto, grandes trocas eram necessárias.
Nos sistemas modernos de memória virtual, a memória é trocada em blocos (em vez de processos inteiros), para que você possa conviver com pequenos swaps. No seu cenário, seria melhor ter processos mortos, portanto, executar com troca menor fará com que o OOM inicie os processos mais rapidamente (em vez de fazer com que o sistema gaste quantidades excessivas de tempo trocando itens de / para o disco).
limits.conf