If there isn't a reason you want in-person work (and there might be--physical exercise, social interaction, etc.), I'd say you should instead look at making money online.
When you can earn in a much stronger currency than you spend (geographic arbitrage), it's pretty powerful.
Working there means you'll be earning not only in local currency, which isn't bad, but at local rates, which likely is. For example, picking the first country you list, Costa Rica, and Googling the average hourly wage (converted to USD, as of July 12, 2016):
Non-Qualified Worker $2.24
Semi-Qualified Worker $2.42
Qualified Worker $2.54
High School Level Technician $2.73
Specialized Worker $2.93
College Graduate Technicians $3.37
"Diplomado" Degree Holder $3.64
Bachelor Degree Holder $4.13
"Licenciatura" Degree holder $4.95
Source:
http://costarica.com/business/salary/Why earn the equivalent of maybe $3 USD/hour working there, rather than just work online and earn $10, maybe $20 per hour?
Unless, like I started the post with, you have other reasons than money, so you're taking the job for social interaction or something, and a little bit of money is just a small side benefit of the job itself.
That's my thoughts--don't bother with working on skills for the type of work available there, work on building an online income, and then spend just a little bit of time while there earning, and most your time enjoying.
:)