Translation is not being output in one instance

Your first line of code looks ok, are you sure you have a translation for the 'Featured' string in your PO file? Your second issue is an excellent example of how you should not use the gettext functions. You are trying to translate dynamic string '<a class="more-link" href="'. get_permalink($post->ID) . '">Read More</a>' for which you should have the corresponding translation for every different get_permalink($post->ID) value. What you should do instead is

return ' &hellip;<a class="more-link" href="'. get_permalink( $post->ID ) . '">' . __( 'Read More', 'mytextdomain' ) . '</a>';

or

return sprintf( ' &hellip;<a class="more-link" href="%s">%s</a>', get_permalink( $post->ID ), __( 'Read More', 'mytextdomain' ) );

and translate only the 'Read More' phrase.