You are very close to your original method; however, you need to follow a few additional steps Zend_Layoutto get what you want:
$layout = Zend_Layout::getMvcInstance();
$layout->setLayout('email')
->disableLayout();
$layout->content = $this->_view->render($template);
$html = $layout->render();
$this->setBodyHtml($html, $this->getCharSet(), $encoding)->send();
Zend_Layout::disableLayout() $html. Zend_View Zend_Layout::content. .
Zend_Layout::setView Zend_View , . , , .