PHP - Yes, learning this language will make you suitable for a large number of freelance projects. May niche (and higher paying) services like WordPress customization, Drupal customization, Joomla customization will all become a possibility to you if you know PHP.
Python - This is yet another language that is popular and has a LOT of freelance jobs. It is also fun to work with. I have not taken projects that require python but I have seen many jobs on job boards, odesk.com, guru.com that require you to know python. These projects always involve developing web applications with Python using the Django web application framework.
Android - It is the hottest mobile development framework available today. I would tread with caution if I were you in relying solely on this for a steady source of income . A few years ago Symbian was the hottest mobile phone OS to program for. Now you can find not a handful of companies that use the Symbian OS. Nokia ( who owns symbian now ) has moved on to the MeeGo OS.
On to how to get expertise on these: There are dozens of books published on these topics by Packt, Apress, Wiley, O'Reilly. Investing in these books will save you much time.
Nope, Not really
perl - Not a lot of websites today use perl. You will cannot find many projects that require you to work on perl.
Ruby On Rails - Ruby is a programming language and Rails is a web application framework written in ruby. You will find many jobs on this as well as full time positions on the same.
It is important that you NOT base your opinion solely on what answers you will get here. Go to many job boards. Here is a directory of the job boards:
Get an idea of what are the niche skills that are in demand today. You need not necessarily prepare to provide the skills that is most in demand. Determine what you can realistically do well and acquire that skill.