Removing Visual Composer head meta (works alone but not with IF)

your problem boils down to doing things before the init hook was fired. You should never check for code existence, DB structure before it. In case of frontend related code you should not do anything before template_redirect hook.

Your code should be like

add_action('wp_head', 'myoverride', 1);
function myoverride() {
  if ( class_exists( 'Vc_Manager' ) ) {
    remove_action('wp_head', array(visual_composer(), 'addMetaData'));
  }
}