I think it sounds like you have found a good way to handle it.

My best friend's step-son got in trouble for lying right before Christmas last year (he was 12 or 13). He had things in his room taken away...his posters, games etc. He was left with his bed and a desk. He then had to earn things back, and earn his Christmas presents. For each week he he was good, did what he was told, etc., he got a few things back. Maybe that would be a way to go too, rather then keeping everything ( I don't know how much is involved) for a month, let him earn things back slowly, so he sees his reward a little sooner...a month can be along time to a 7 year old.

And I agree...as mad as it makes you now, this will be a great story to tell his first girlfriend, the grandkids...