I still don't understand why you wouldn't just use something like Slick 2D or Unity to accomplish this task. Gamemaker is heavily flawed and extremely lacks fine-tuned customization. Creating your own engine for a simple 2D game is basically re-inventing the wheel in many cases.
You could get to the point you are in this game with Unity in a matter of hours. Or, if Javascript, C#, or Booscript don't suit your fancy, you could use Java + Slick 2D..