腹いっぱい means 'stomach full', focusing on physical fullness, while たらふく focuses on the act of eating/drinking as much as one desires.
Etymology
The origin is uncertain. The kanji 鱈腹 is ateji, using 鱈 (cod) and 腹 (belly) phonetically, possibly from the image of a cod's full belly. The reading たらふく may be related to 足る (たる, 'to be sufficient') and 腹 (はら, 'belly'), but this is speculative.