You have big framebuffer, the unnecessary assertions are disabled in lv_conf.h and PXP is enabled, this part seems OK for better grpahic performance. The real reason might be related to your particular MCU and board: e.g. SDRAM is running much slower at 166MHz than the MCU at 600MHz, which is not good for too many dynamic allocations used for widgets/themes (especially if you use temporary screens). Maybe you should reduce the amount of dynamic allocations at runtime as much as possible, and it’s worth a try to look at LVGL forum too.
For the color-initialization I think you should revise the reset signals on the board and the display driver’s initialization code.