Can I generate then display a mixed list of linked and unlinked terms

You can use the count property of the taxonomy term and if it is > 1, then show the term linked to archive.

// inside loop, get the terms of a custom taxonomy for the current post
$terms = get_the_terms( get_the_ID(), 'your_custom_taxonomy' ); 

// cycle the terms and display the name, linked to archive if term count is > 1
foreach ( $terms as $term ) {
  $link = $term->count > 1 ? get_term_link( $term, $term->taxonomy ) : FALSE;
  echo '<li>';
  if ( $link ) echo '<a href="' . $link . '">'; // open link if needed
  echo $term->name; // always show term name
  if ( $link ) echo '</a>'; // close link if needed
  echo '</li>';
}