I think I answered my question during writing it.
I used wp_cache_flush(); just before $user = new WP_User($user_id); and all is ok, I should have flushed only the necessary key instead of the whole object cache but I didn’t really have the time to find out the key name.