I only checked the first link, idk wether it's sorted or not. But the problem is that your small image is the last image within the div.
So it's taking the bottom of this image as the end point for the div, which it's not. You need to finish the div with your larger image, and it will use the bottom of this image as the bottom of the div.
If that makes sense, plus it's more semantically correct to go left to right, so the last part of the content in the div should always be what's displayed in the bottom right.
See you have this
<p>Chronical Messiah are a P... their debut album cover.</p>
<img class="frame" height="368" width="368" alt="Chronical Messiah Album Cover" style="float: right;" src="images/chronical_messiah_album_cover.jpg"/>
<img class="frame" alt="Chronical Messiah Poster" src="images/poster001.jpg"/>
</div>
The Second to Last image you have there, you're floating right to push it over past the last image, which is un-semantic, and is causing your problem.
Just a simple, logical restructure would sort it.
<img class="frame" alt="Chronical Messiah Poster" src="images/poster001.jpg"/>
<img class="frame" height="368" width="368" alt="Chronical Messiah Album Cover" src="images/chronical_messiah_album_cover.jpg"/>
So now the image you want on the right, is now semantically on the right, and your not forcing it anywhere, your letting the natural document flow take it there.
I hope this makes some vague sense, my ability to explain solutions well is a little lacking.