Change the notification's mouse- over behaviour
Almost what you asked for, and possibly what you might like, a tiny, very light background script (no noticeable load to your system whatsoever, if no notification runs, it will only wait/check for one to appear) that will change the mouse-over effect of the notifications from fade:


to disappear (close):

This will only take effect if the mouse is moved from outside the area into the notification area, to make sure you won't miss the notifications if your mouse already is in the notification area if the message is launched.
How to use
The script needs xdotool
sudo apt-get install xdotool
copy the script below into an empty file, save it as manage_notifications.py
Test-run the script by the command:
python3 /path/to/manage_notifications.py
with the script running, open a terminal window and run the command:
notify send 'This is a test'
now move the mouse to the notification. Instead of fading, it should disappear.
If all works fine, add it to your startup applications: Dash > Startup Applications > Add the command:
/bin/bash -c "sleep 15 && python3 /path/to/manage_notifications.py"
The script
#!/usr/bin/env python3
import subprocess
import time
w = int([s.split("x")[0] for s in subprocess.check_output(
["xrandr"]).decode("utf-8").split() if "+0+0" in s][0]
)
def get_mouse():
loc = subprocess.check_output(["xdotool", "getmouselocation"]).decode("utf-8").split()[:2]
return [int(n.split(":")[1]) for n in loc]
while True:
time.sleep(1)
try:
subprocess.check_output(["pgrep", "notify-osd"]).decode("utf-8")
curloc1 = get_mouse(); t = 1
while t < 10:
time.sleep(1)
curloc2 = get_mouse()
test1 = curloc1[0] > w - 400 and curloc1[1] < 400
test2 = curloc2[0] > w - 400 and curloc2[1] < 400
if all([test1 == False, test2 == True]):
subprocess.Popen(["pkill", "notify-osd"])
break
curloc1 = curloc2
t = t+1
except:
pass