Is there a way to hide certain transactions from general viewing?
There are a number of ways you could do your latter option. 

A/  set up Groups of Contact for each Employee - then add the Contacts who they should see be able to see - then set up CiviCRM ACLs and remove the permission to View All Contacts - then they will only see those in their Group

B/ use the Permissioned Relationships extension and use this to supply the Access Control via civicrm Relationships