Ignore the comments "you're not good". I'm pretty impressed by you're output. If you haven't got code up on github, perhaps consider putting some there. It will help you to finding a job.
As for getting work. You just need any work that you can put on your resume that shows "commercial experience", rather than raw coding ability.
Have you considered Australia? We have a shortage of good coders, and it's not getting better. A lot of the coders that get interviewed are not great at all.
I've worked for one company that hired remotely out of Russia, and another that hired and sponsored foreigners, though you may need a degree to qualify for that, but I'm not certain. You might need that first starter job on your resume to attract attention before doing this, but it can't hurt to try.
Don't aim straight for Google/Facebook. If you're that good, you'll get there anyway, but in the front door right now might be tough until you've had at least one job, but you can always keep knocking until they open.
Also, that one coding job could be simply doing something specific for your family's company.
You could try A/B testing the recruiters. Find some jobs on job sites you might be interested in, but probably not. Contact them about remote work, figure out how they respond. Test out your cover letter. Test out how github code helps, how your portfolio helps. See how they respond to the idea of remote work.
A guy I worked with, desperate to find coding work, spammed the local IT companies on linked-in, and found a sponsored job here in Australia.