I've recently had an upgrade to 10.8.5 and now have this problem too.
The behaviour seems to be:
I select an email, part way through my inbox, read it and delete / file it.
If there is an unread email above the just deleted one (adjacent or way above and off the page) then the next message shown will be the one above the one I moved.
If there is no unread email above then the next message shown will be the one below.
I usually sort in date (oldest up) and work down from some point to the recent ones. Occasionally I'll try and work through all the mail from a given sender. This change in behaviour makes both these use cases hard work.
If I'm trying to deal with the easy mails in a short gap this slows me down. I know the unread ones are there, I don't need mail to be semi-smart at me.
I've tried with com.apple.mail IgnoreSortOrderWhenSelectingAfterDelete set to zero and to one and the behaviour is the same. Anyone know of a switch to get the simple "working through a list in logical order" behaviour back?