Можно ли написать веб-приложение, имеющее все функции десктопного приложения (в том числе БД), используя лишь чистые HTML/CSS, JavaScript (Node.js для серверной части)? Например, без использования React.
Разумеется можно. Проблема лишь во времени и сложности. Фреймворки значительно ускоряют и упрощают разработку. На нативном js придется самостоятельно думать о многих вещах. Например поддержка событий в разных браузерах и т.д. В конечном итоге в приложении на js за основу пойдет самописный фреймворк, который будет сложно поддерживать
Можно, при этом если что-то небольшое и не сложное пилить, это даже будет быстрее, чем с использованием фреймворков. Ситуация кардинально меняется, когда беретесь за сложные проекты.