Taxonomy list names with lowercase

What you are doing seems odd. You are creating and retrieving an HTML string only to strip out the HTML.

Try this:

$terms = get_the_terms( $post->ID, 'genre' );
// var_dump($terms);
$tnames = array();
if (!is_wp_error($terms) && !empty($terms)) {
  foreach ($terms as $t) {
    $tnames[] = strtolower($t->name);
  }
  $genre = implode(', ',$tnames);
}
// var_dump($terms);

You can un-comment the var_dumps to get an idea of what is happening. You can change the first parameter of implode to change the separators– right now it uses a comma.