Es gibt einen Apache-Parameter, der die Größe der $_POST-Variablen begrenzt.
FcgidMaxRequestLen
Der Parameter kann je nach verwendetem PHP-Modul unterschiedlich heißen und unterschiedliche Default-Werte haben. Ist er zu klein, führt er gelegentlich (wenn eben die Größe überschritten wird) zu diesem vermaledeiten Fehler 500, der auch in meinen Logs nie mit einer Meldung auftauchte, die ich hätte interpretieren können.
Wie man am Namen des Parameters erkennen kann, verwende ich mod_fcgid.
Einen Versuch ist's wert.