You can get married either in the US or Canada, doesn´t matter. Your girlfriend can sponsor you unless she is in active bankruptcy or is on welfare. If your girlfriend currently lives in Canada, no problems. If she currently lives in the US, she would have to prove that she will be moving to Canada when you get your PR.
You can apply for sponsorship outland and stay in the US where you can still work until your green card is about to expire and then enter Canada on your green card and stay as a visitor until your PR comes through if it is not through already. Another option would be to go to Canada right now and apply inland, however, then you would not be able to work until you get first stage approval which is currently 10-11 months. If you apply inland, you must stay in Canada during your processing.
One complication is that if you apply outland, you could either have your application processed in the US or in Singapore. Singapore right now lists a processing time of 26 months, see http://www.cic.gc.ca/english/information/times/perm/fc-spouses.asp#asia while the US would be processed in Ottawa where it's 14 months. The complication applying through the US would be that if an interview is required, they may call you to one of the US offices to do that and if your green card is then expired, you would have to see if you can get a visa to enter the US for that interview as well as if you would be allowed back into Canada with your expired green card after the interview. The time listed is for 80% of applications so you could be faster and you could apply through the US and possibly get your application processed in less than a year.
If you apply through Singapore, you can enter Canada when your green card is about to expire but then you would have to wait. As a visitor you would have 6 months in Canada but you can apply to extend based on waiting for your processing. An interview would take place in Singapore if required but there would still be a long time that you are probably waiting in Canada and unable to work while they complete your processing.