Custom Taxonomy Template Error: Catchable fatal error: Object of class WP_Error could not be converted to string

Well, you echo an object. Never just echo stuff if you are not sure what you get in return. Take a look at the function: The error itself is quite clear:

function get_term_link( $term, $taxonomy = '') {
    global $wp_rewrite;

    if ( !is_object($term) ) {
        if ( is_int($term) ) {
            $term = get_term($term, $taxonomy);
        } else {
            $term = get_term_by('slug', $term, $taxonomy);
        }
    }

    if ( !is_object($term) )
        $term = new WP_Error('invalid_term', __('Empty Term'));

You seem to not be getting an object in return, so possibly your $term->name is wrong (or empty).

To test for an error use is_wp_error() and to output the message:

$link = get_term_link( etc );
if ( is_wp_error( $link ) )
    echo $link->get_error_message();

Then you should get proper output of what happened and should be able to fix it.