This will do, but mind there will be run 3 db queries, so maybe you'd like some joins instead
<?php
// don't do this in the view, better in controller, service or whatever and just pass $posts to the view
$posts = Digitus\Base\Model\Post::with('tags.posts')->get();
?>
@foreach($posts as $parentPost)
@foreach($parentPost->tags as $tag)
@foreach($tag->posts as $post)
<?php if($post->id == $parentPost->id) continue; ?>
<div class="col-xs-6 col-sm-6 col-md-6 col-lg-6">{{ $post->title }}</div>
@endforeach
@endforeach
@endforeach
----- edit: In your Tag model you don't return nothing from relation, so just add return:
public function posts()
{
return $this->belongsToMany('Digitus\Base\Model\Post');
}