Unfortunately I've got little time to make bugfixes - situation will become better in march, I guess.
But to clear things a bit up, I'm afrain it's more complicated than you described: when I encountered this bug, I examined the cached events, and when there should be 2 events, there were 4 events, but the 1st was equal to the 3rd and the 2nd was equal to the 4th. So it's not about caching a wrong number of events, it actually caches the duplicates - which is my reason to assume it may be an error of last.fm.
But I have to review my own code before blaming last.fm, of course :).
~~~Cheers!