It sounds like you're trying to keep view content out of the controller. I also believe in trying to keep view content out of the controller, so I try to place view content in my views whenever possible. I do it this way:
For example, in layout.phtml I might have two placeholders, one for the title and another for main content:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title><?php echo $this->escape($this->placeholder('titleContent')) ?></title>
</head>
<body>
<div id="maincontent">
<?php echo $this->layout()->content ?>
</div>
</body>
and then in the index.phtml view itself I put both pieces of content like this:
<?php $this->placeholder('titleContent')->Set('My Index Page Title') ?>
<p>Index page content here</p>
You can add as many placeholders as you want with no impact to your controllers. With this method most content stays out of the controller unless it comes from the model.