Я слышал, что среди джуниор фронтенд разработчиков большая конкуренция.
Я не заметил конкуренции пока искал работу питонистом. Судя по hh - большинство "конкурентов" не умеют складывать слова в предложения, сомневаюсь что они в состоянии писать софт. Минимум половина валится на типах данных(ТИПАХ ДАННЫХ КАРЛ), другая половина на тестовых.
3) Можно ли стать мидлом не имея опыта коммерческой разработки т.е. обучаясь дома
Таки да, но будет медленно, бессмысленно и маловероятно.
т.е. обучаясь дома по курсам
Нет. Хотя это не совсем правда, но это как набирать мышечную массу питаясь одной зеленью - в теории возможно, в реале практически недостижимо.