ESP32 is basically an Arduino on steroids, lots of IO, you can program it in the same way as Arduino, even using the Arduino IDE, so it is as easy as Arduino.
You can also get ESP32 boards with built in CAN, and there's libraries out there to talk to other ESPs over wifi/BT, so you could run two ESPs at either end of the vehicle with no physical connection and still do all you want.
It's also much, much faster than the Arduino, has much better support for storage and has multiple serial interfaces (unlike arduino).
As far as CAN goes, I really don't think it ever complex, any more than serial, an interface either end and a loop to read the data and then you just make decisions on what to do with it.