Don’t show a tag on a post if it is the only post with that tag

Because get_the_term_list() create the html link for you.
So

  1. you need to use wp_get_object_terms to get a list of terms info first with count for handling.
  2. compare each tag count, if the count > 1 then create the link and output

I have just tried. It works

<p class="meta-tag-list"> 
<?php
$terms = wp_get_object_terms($post->ID, 'category'); // replace 'category' (default Post post type taxonomy name) with your taxonomy such as 'topic'
foreach ($terms as $key => $term) {
    if( $term->count > 1 ) { // if the count is > 1, output, if not, then nothing will happen
        $link = get_term_link( $term->term_id );
        echo '<a href="' . esc_url( $link ) . '" rel="tag">' . $term->name . '</a>';
    }
}
?>  
</p>