When a new case is set up, we need to let the parties involved with that case communicate privately and have their messages and shared docs only accessible to them? Like a shared, but private, message board. Is this possible without using an 'outside' tool?
You can add BuddyPress in and with the additional BuddyPress CiviCRM plugins it will sync users. Think Facebook and you've got the idea. You can make things private or not, do PM's, do groups, etc.
Also take a look at iflychat. It's technically an outside tool but can be embedded in wordpress so appears as if it's part of the site. It can have private chat rooms and files. https://iflychat.com/installation/wordpress-chat-plugin. It also has drupal and joomla plugins.