This part:
-Xmx3G -Xms2G
Is saying to Java: start this up with 2 GB of RAM reserved, and then let it grow to a max of 3 GB if needed. However, the error suggests you might not have enough RAM available to start it with 2 GB.
Try changing that part of the line to: -Xmx1G -Xms512M
I don't know how well the server will run with that much, but, assuming you have 512 MB of RAM free, it should at least start. Alternatively, now that you know what those arguments do, mess around with the numbers to suit the amount of RAM you have free.