In your second file Car_Data_Meta_Boxes_Init line:
add_action( 'save_car_data_meta', array( $this, 'save_meta_boxes' ), 10, 1 );
you bind to your custom action save_car_data_meta but this action is triggered inside save_meta_boxes function this is why it never gets triggered unless you do var_dump(Car_Data_Meta_Box_Data::save_car_data_meta(158)); manual triggering of save meta function in metabox rendering logic.
So you need to replace in your Car_Data_Meta_Boxes_Init class this line
add_action( 'save_car_data_meta', array( $this, 'save_meta_boxes' ), 10, 1 );
with
add_action( 'save_post_{YOUR_POST_TYPE_NAME}', array( $this, 'save_meta_boxes' ), 10, 1 );
replacing {YOUR_POST_TYPE_NAME} with exact Custom post type name, probably it’s a car this way you’ll have save_post_car action name.
See https://developer.wordpress.org/reference/hooks/save_post_post-post_type/ for reference.
(Also it’s always good to sanitize user input when you read data values from $POST when you save them.)