The "<p>"-element is not allowed in a "div"-construct in this context. So you will get many error messages, if you use this construct (one error message per featured post!).
If one comments out the "<p>"-elements, the error messages are away and all is valid. Indeed, then there is a problem with the adjustment of the headline. I further try to find a suitable solution at the moment. Maybe it is also a "jquery"-point?

Okay. My first result: I have moved the code a little and now the whole side is validated. Also the headline is at its right place. In addition, I have inserted an "ins"-element to show the readers that a clickable link is hidden. Tested in Firefox, IE, Opera and Safari and it works very well …

Thanks for the pointers. I always thought the problem was due to WP inserting <p> tags by itself, which is not in my control. I will give your suggestions a shot. One thing I couldn't understand was that in your code too you have <p> within <div>, so how does that validate? Moreover, I guess you already know, <p> tags within <div> are legitimate, but the reverse is not true.

At the beginning of my "sandbox-trials" I also thought, it would be an internal WordPress point. But after I had removed all texts, the problem still existed. So I have done handicraft in the code.

The "<p>"-element is permitted inside of "<div>"-parts, but it´s a question of the real position of the opening "<p>" and the closing "</p>". I think that´s a problem of xhtml-coding in php. So I have shifted the code a bit. After I had all texts in WordPress again, it all works in a really good way. So, the problem is the position of the "<p>" inside the “div”-component. A pure context thing. Sometimes, w3c is a little bit strange, isn´t it?!