If too much RAM is requested by the operating system (Guest or Host whatever) then swapping starts to occur which will freeze your system.
Under Edit - Preferences - Memory, did you enabled "Fit all virtual machine memory into reserved Host RAM" ?
When there is a freeze how much RAM is used/free by the Guest at that moment?
How much RAM is used/free by the Host at that moment?