its really tough to earn decent money free lancing. Maybe as part time... I have never done it myself but thats the impression i get. My advice would be to concentrate on Front End first, get familiar with popular libraries like jQuery, bootstrap etc, also get some knowledge of MVC frameworks, Angular is very popular right now for example. You need to understand trends and concepts like one page application and responsive design. Then move to back end, SQL, mongo db and the likes.
After you can develop full stack be enterprise stack or something new like MEAN stack. Wordpress is a good stack solution for freelancer who builds for small businesses. Plenty of resources online.
Also if you wanna be one stop shop you need to be familiar with photoshop as well.

Hope that helps!