To be clear: I hate that overcommit exists. I think the whole situation the OOM killer makes zero sense for servers.
Having plenty of swap can help with programs that use a lot of virtual memory. AFAICT, there's no solution for the cgroups issue though.