Или можно сразу же, не переживая, переходить к активному изучению JS / PHP (HTML & CSS) без каких-либо реальных навыков разработки в уже сказанных языках?
Это куда более долгий путь, а учитывая, что тебе надо ещё и работать, то очень долгий. Да, он, имхо, более правильный, лучше понимание всего программирования будет, что будет очень полезно в перспективе, но насколько ты сможешь себе это позволить сейчас?
По сути, с учётом работы, тебе год-два понадобится (я не очень понял твои навыки программирования сейчас).
Альтернатива сразу идти в жс и потом, когда (если) уже получится устроится на работу, начать изучать основы программирования на других языках. Хотя некоторые и без этого обходятся и ничего.
И да, фронтеров трейни дофига и много, так что не факт, что альтернатива выгорит. Как и наоборот. Самообучение всё же несёт свои плюсы и минусы.
C, C++, Java, C#
Имхо, опять же, я бы тут сделал такой список: C/C++, Java или C#, Haskel или другой функциональный язык.
Стоит ли пытаться сразу же восстанавливать пробелы в таких науках, как дискретная математика, комбинаторика?
Знать полезно, но на фронте тебе вряд ли эти знания пригодятся.