Applying to Canada is a good idea. Only thing is it takes about 1 year to complet the process. The question is can you work somewhere else during your wait for Canada? I have friends who worked at Indian store/restaurants while waiting. Just an idea.
Few tips before applying for Canada... this will make the process go much quicker:
Make sure you do the online evaluation before sending the application. Make sure your score is enough.
Make sure you send the FBI finger prints with your application. Otherwise you will have to send it later and there will be much more wait. It takes about 5-6 weeks for FBI to send you the finger prints.
Make sure you fill out all the applications. And where there is no answers, make sure you write "N/A". If you send them blank, they will return your application.
Make sure you write a small letter explaining why you don't need to prove English Proficiency. Tell them you went to school in US. Also it is not bad idea to send them a copy of your old TOEFL score, even if they are not valid anymore.
Send them both the applicaton fees and landing fees with your application at the begining.
If you are filing for Skilled Worker Immigration, make sure you send letters from your previous employers. If you can't get letter, send a letter explaining your situation. Send them old pay stubb to prove that you did work at the place.
You don't need to file via an attorney. The application is real simple you can do it by yourself.
The idea is: once you get the Canadian papers, go to Canada and try to find a job. If you get a job and happy there... good for you. (It is a much better idea than going back to Nepal... well, may be not. I heard in Nepal, there are many new opportunities these days).Otherwise, apply for jobs here in US and come here in H-1 visa. Canadian law requires its permanent residences to live in Canada for two years in every five years.
Good luck.