User
Если в комментариях знающие люди приоткроют завесу тайны, буду весьма благодарен.
Parent root = FXMLLoader.load(getClass().getResource("YourFXML.fxml"));
Вот это:
создаёт новый экземпляр класса, указанного в fx:controller и инициализирует всё в нём. Поэтому fxButton и остаётся неинициализированным в том экземпляре, откуда вызывается FXMLLoader.load().