Does $element['#title'] need to be escaped with check_plain()?
It's user input and should be considered unsafe; you should always sanitise it.

For the specific example you've given where it isn't, the title is already sanitised before it's passed to the theme function containing the t() call. This happens in field_multiple_value_form()

$title = check_plain($instance['label']);

...

$element = array(
  ...
  '#title' =&gt; $multiple ? '' : $title,
  ...
);


As an aside, if you ever did need to preserve HTML in the title for whatever reason, you could consider using filter_xss() instead.