I think you need set reasonable "DefMemPerCPU" - otherwise jobs will take all memory by default, and there is no remaining memory for the second job.
We calculated DefMemPerCPU in such way, that the default
allocated memory of full node is slightly under half of total node
memory. So there is always space for second job. And if user needs
more, uses "--mem" option in sbatch and gets what needs.
cheers
josef
...