А почему отказаться от МК ?! Сразу признаюсь, что ни о "NUC972", ни о "-O3 -flto" я ничего не слышал и не знаю.
Но есть общие правила для любых систем.
1. Необходим комплекс тестового ПО и, возможно, доп. аппаратных средств. И это не зависит от конкретно этой проблемы.
Если возникли подозрения на аппаратные средства, запустите непрерывный тест с диагностикой.
Тест ROM, RAM, тесты портов ввода/вывода итд.
Хотя бы подключитесь к RS232 компа и гоняйте сутками мегабайты туда/сюда.
На предмет выявления возможных сбоев от питания , сбоя по "reset" итд итп
2. Судя по эффекту "-O3 -flto" причина в софте.
Хорошо бы выяснить, при любых ли параметрах существуют сбои или только при некоторых ?
Вероятность сбоя меняется от параметра или нет ?
3. Вариант немедленных действий - "откат". Переход на начальные версии проекта, которые конечно же спасались
и сохранялись не реже 1 раза в сутки. (Если нет, то поздравить не с чем).
Если нет спасений - резать проект, создавая урезанные, упрощённые версии и тестируя их беспощадным образом.
---
По моему личному опыту, такие ошибки, как "раз в 6 часов" - чаще всего это "конфликт потоков".
т.е. не корректно выполняется операция чтение/модификация/запись из фоновой программы
и прерывания. Проблема может быть не только с данными, но и с портом ввода/вывода.