I believe I found an answer:
$users = User::select('users.id as user_id', 'users.email as
->join('user_block', 'users.id', '=', 'user_block.user_id')
->join('blocks', 'user_block.block_id', '=', 'blocks.id')
where I pass the project_id to limit the records returned.
I'm still able to access the model in the blade template to call a
function which checks which users have uploaded all the required documents
for each block.