It will display a month layout, with each day being clickable.
SharePoint calendar default behavior
When a day is clicked, a popup would allow someone to select a
two-hour time window from a range of hours, if no one else has taken
When the user clicks OK, it would then write that to a list with the
user's domain ID.
Default behavior: every item has Created by (Author) column that contains user info.
If departmental Approvers approve the item, it would appear on the
calendar; else not. Either case, the user needs to be notified of
You can turn on 'Require content approval' on calendar (default behavior). However deletion needs to be handled by event receiver.
Summary: Most of required functions are SharePoint OOTB. You will need some extra customization to achieve better user experience and to handle verification. It is quite simple task for some experienced SP developer. I see only one 'tricky issue': is time window free or not if there is unapproved event present?
I am not aware of any 3rd party solution but most likely there are more the few out there.