Что нужно учить чтобы уверенно брать заказы на фрилансе?
Что мне учить чтобы с легкостью потом выполнять заказы на фриалнсе по веб программированию? 

Не бывает такого, чтобы с легкостью.
Бывает только тяжело, и еще тяжелее. Просто с накопленными навыками и скиллами это становится по силам.

Ну а учить нужно логику
"К примеру такие задачи на фрилансе как: написать модуль opencart, настроить сортировку, реализовать разные купоны и т.д, создание модулей для продажи товаров cs-cart и т.д."
Как бы логично, что нужно изучить opencart, фреймворк и язык на котором он написан. Или какой ответ тут ожидается?
Что мне учить чтобы с легкостью потом выполнять заказы на фриалнсе по веб программированию?

Для того что бы с легкостью решать задачи, вам нужно на них специализироваться. 
Вот алгоритм прокачки, которым я пользовался:
0. Составить список классов задач которые хотите уметь решать (не более 5, в идеале 3) и отсортировать их по возрастанию сложности (по вашему личному мнению)

Взять из них первый (самый простой) пункт, найти соответствующий заказ на бирже фриланса и выполнить его (бесплатно, для себя, не уведомляя заказчика). Попросите ТЗ, выведайте подробности, но заказ не берите.
Во время выполнения обращайте внимание на проблемы, которые возникают в процессе, выпишите их
После завершения составьте резюме, опишите что было сложно, подумайте над тем как решить возникшие проблемы
 Если на 3 этапе вы поняли, что решили задачу уверенно, возьмите следующий заказ того же класса, на этот раз его уже за деньги и выполните пункт 2 и 3, если же нет то начните с пункта 1. 

Записи это очень важный момент, они помогают запоминать и структурировать информацию, не пренебрегайте этим.

После нескольких повторений вы почувствуете, что многие вещи решаются автоматически, главное тренировать не больше 2 новых для себя специализаций одновременно.