first thing first - i have no experience with XMEGA, but have learned many things about STM32 - sometimes the hard way :)
If adding LWIP without initialization (you written it is only compiled, not initialized, so basically adding global variables (sections .data /.bss) and not called code (sections .text)) alters your system behavior IMHO you are in realatively deep "voodo programming", and not tracking root of the problem would probably "hit you later".
Teoretically adding new code can also replace so called "weak references" to interrupt handlers (so for example addin LWIP can change ETH IRQ handler), but if this IRQ is disabled it shoudl not change anything.