Hola Agustin, decirte que estás en lo correcto o no me parece equivocado, por mi parte te diré que comparto lo que dices en su mayor parte, pero no en todo.
Concretamente, hacer aplicaciones web no siempre es posible, te pondré un caso claro, si estas en una empresa de desarrollo de software en el que se trabaja con sensores los cuales tienen sdks complejos, te aseguro que no podrás utilizarlos en web, simplemente porque no tienes los sdk, además de los drivers etc, y crearlos sería una ardua tarea en la que una empresa no invetiría dinero ni tiempo.
En cuanto la crítica a java, como programador de java te puedo decir que seguramente estás en lo correcto, javafx da muchísimos problemas, y es nefasto, llevo tiempo con él y aún tengo problemas estúpidos, pero es la única salida que tiene un programador de java para obtener algo parecido al mvvm. Obviamente no tiene comparación con angular , react o vue .
Y java funciona en cualquier SO de usuario, también en android ( con algunas pequeñas modificaciones de código lo tienes ) , por lo tanto si no puedes hacer el programa en una appweb y solo te queda la opción de escritorio, java te hace escribir una sola vez, no 3 ni 4. Algo muy a tener en cuenta.