Just something I thought of just now, not sure if it's a good idea or not.
After two months of being inactive, your gamescore decreases by 1% for every day you're not online. That gives the person long enough for any "technical difficulties" they may have, and will stop inactive players being amongst the top for too long. It'd work something like this.
Gamescore: 100,000
Gamescore after two months of inactivity: 100,000
Gamescore after two months, one day of inactivity: 99,000
Gamescore after two months, two days of inactivity: 98,100
Gamescore after two months, three days of inactivity: 97,029
Gamescore after two months, four days of inactivity: 96,059
Gamescore after two months, five days of inactivity: 95,099
So the decrease would be incremental. All the persons statistics would remain, however, and upon log-in, they'd all be restored. It doesn't sound like it would be too hard to implement. I dunno. Just a suggestion.