Вам нужен столбец для дифференциации результатов, нет необходимости добавлять фактический столбец в самой таблице, используйте фиктивные столбцы
Измените это
$this->db->select($this->db->escape('v_grants') . ' AS source, id, Title');
На
$this->db->select($this->db->escape('v_grants') . " AS source, id, Title, 'grant' as type ");
Измените это
$this->db->select($this->db->escape('v_art_call') . ', id, Title');
на
$this->db->select($this->db->escape('v_art_call') . ", id, Title, 'art' as type ");
Тогда вы можете легко использовать оператор if-else для отображения правильной строки (grant / art)
<table class="table">
foreach($results as $row){ ?>
if($row->type == 'grant'){ ?>
<tr>
<td><h2><a href="<?=base_url()?>product/grantindividual/<?=$row->id?>"><?php echo $row->title?>
</h2></a>
</td>
</tr>
<?php }elseif($row->type == 'grant') { ?>
<tr>
<td><h2><a href="<?=base_url()?>product/artcallindividual/<?=$row->id?>"><?php echo $row->title?></h2></a>
</td>
</tr>
<?php } ?>
<?php } ?>
</table>