For design's sake(?) I'd check out
Noty and its examples, but you seem to already have something in mind (something that very sweetly reminds me of Flight Rising).
You'll want the x's to dismiss the alerts/mark them as read on the backend in real time, and you're right that it's probably the largest struggle. Ah, beauty and functionality, why dost thou have to be worlds apart?
My mind is telling me "okay so jQuery/Javascript function attached to the X next to an alert that modifies the database with pseudo-form 'post' via ajax when clicked so the database knows it has been dismissed, and then runs a function on a success that removes/greys out the alert from sight"! So, thankfully, the logic is there, but it's easier said than done. I'm not much of an expert at running ajax. In fact, I've yet to do anything of the sort with Mysidia.
It can, of course, be done with regular Javascript rather than jQuery, but the shorthand and added functionality... that's how I tend to operate.
I'd like to wait a little bit and see if that gave you any insight, and see what IntoRain might have to say on it.