For loading models with specific column, though not eager loading, you could:
In your Post
model
public function user()
{
return $this->belongsTo('User')->select(array('id', 'username'));
}
Original credit goes to Laravel Eager Loading - Load only specific columns