Help on Wp_query to print an term

If you want to output/print the term name look at this within the loop:
https://developer.wordpress.org/reference/functions/get_the_terms/

$terms = get_the_terms( get_the_ID(), 'pwb-brand' );

You will need to output within the loop similar to this:

<?php
    $loop = new WP_Query( $args );
    if ( $loop->have_posts() ) {
      while ( $loop->have_posts() ) : $loop->the_post();
        $terms = get_the_terms( get_the_ID(), 'pwb-brand' );

        if ( $terms && ! is_wp_error( $terms ) ) : 

        $brands = array();

        foreach ( $terms as $term ) {
            $brands[] = $term->name;
        }

        $on_brands = join( ", ", $brands );
        ?>

        <p class="beers draught">
            <?php printf( esc_html__( 'Brands: <span>%s</span>', 'textdomain' ), esc_html( $on_brands ) ); ?>
        </p>
        <?php endif; 
        wc_get_template_part( 'content', 'product' );
      endwhile;
    } else {
      echo __( 'No results.' );
    }
    wp_reset_postdata();
  ?>

You could put the additional code within the content-product.php template file.

Your question says you want to print the terms, but your initial query is trying to filter the results. If so:

$args = array(
  'post_type'      => 'product',
  'posts_per_page' => -1,
);