1) Стоит хорошо знать html и понимать, как строится страница, какие бывают элементы, ... В CSS достаточно общих знаний, остальные набираются только с опытом.
2) Это лучший учебник. Воды там довольно мало, но, я думаю, к концу есть достаточно сложные для понимания не js-разработчика вещи. Стоит попытаться пройти до конца.
3) Чё там её изучать-то?) Это же просто библиотека. Столкнёшься - изучишь.
4) На пункт 3 глубоко плевать. Скорее всего, работая с компонентными фреймворками, ты никогда не столкнёшься с jQ .
Чтобы работать с React/Angular , надо нормально знать язык. Прототипы, методы, типы, ... Иначе всё будет плохо. Кто-то имеет такие знания из своего опыта и без учебника, кто-то из ученика. Я бы рекомендовал для бэкенда сразу после ознакомления с языком (на том же learn.javascript например) , почитать чуток про Node.js и npm и сразу переходить к туториалу на сайте React-а. Просто потому, что у него порог вхождения довольно низок и простенький туториал. Но это ИМХО