Если вы хотите более легкого изучения, переходите на Java.
Он соответствует всем вашим требованиям, предлагает хорошую переносимость (Qt тоже, если честно), и его уровень GUI (Swing) имеет необходимые тонкости. Обратите внимание, что Qt - это набор библиотек, а не язык. Базовым языком является C ++, а также несколько хитростей, позволяющих использовать абстракцию «сигнал / слоты», что весьма полезно (Google для компилятора мета-объектов).
Я бы выбрал либо Java, либо язык более высокого уровня (например, Python) для вашего проекта. Обратите внимание, что вы можете использовать Qt из Python, используя привязки PyQt.
Для встраиваемой базы данных на Java вы можете попробовать hsql .
Обратите внимание, что ни один язык не будет "генерировать легко обслуживаемый код". Задача на ваше усмотрение. Чтобы узнать о разработке программного обеспечения в целом, я от всей души рекомендую текст Эрика Рэймонда «Искусство программирования в Unix»; Вы можете прочитать это онлайн бесплатно.