Корректно слитное написание. Глагол недорешать, обозначающий неполное действие, образован от глагола решать путем прибавления приставки недо-.
Глагол недоедать употребляется в значении 'есть недостаточно, плохо питаться'. А глагол доедать означает 'съедать до конца', поэтому верно: не доедать борщ ('не съедать борщ до конца').
На разнице в значении глаголов недоедать и не доедать основан юмористический эффект в довольно известном анекдоте советской эпохи. Рабочие пишут письмо в ЦК КПСС: «Мы, пролетарии Нечерноземья, прочитали в «Правде», что негры в Африке недоедают. Нельзя ли все, что они не доедают, присылать нам?»
Конечно, простых правил нет. Законы словообразования подробно описываются в грамматиках (например, в «Русской грамматике» 1980 г.), кратко, обобщенно — в учебниках. Наши знания о словообразовании постоянно пополняются благодаря продолжающимся научным исследованиям. Узнать о современных словообразовательных связях между словами можно из словарей, прежде всего словообразовательных (см., например, список словарей здесь). В некоторых других словарях, например толковых, так же могут быть представлены сведения о словообразовании. Так, в «Большом толковом словаре русского языка» под ред. С. А. Кузнецова показано, что существительное недоедание образовано от глагола недоесть.
Не пишется слитно в составе глагольной приставки недо-, означающей неполноту, недостаточность по сравнению с нормой: недоварить (варя, не довести до состояния готовности), недоделать (сделать меньше нужного).
Но от глаголов с приставкой недо- следует отличать глаголы с приставкой до- и предшествующей частицей не (такие глаголы с частицей не обозначают не доведенное до конца действие, они пишутся с не раздельно – по общему правилу), например: мама не доварила суп (не смогла, не успела доварить), я не додедал работу (не смог, не захотел доделать).