I have been stuck in silver for the past 2 years, and this december I failed to promote. I’ve been really practicing hard, and can correctly solve most (around 95%) silver problems in under 30 minutes. I can also solve most (around 80%) gold problems in under 1 hour. However, this december I wasn’t able to solve a single problem, and was really shocked. Is there something I am doing wrong. I have tried almost everything I can, and it is really frustrating to see that I’m not promoting despite improving.
I think you should look at the problems in this year’s contest and see which algorithms you need practice on.
Also, I think it is important to practice solving problems thoroughly. Maybe only assign a few hard problems (3-4) per week and make a thorough attempt on each without using the editorial/analysis. I think this blog post Self-deception: maybe why you're still grey after practicing every day - Codeforces may be useful to you.
Since you have done most the USACO gold/silver problems, maybe try finding problems on Codeforces that are about 1600-1800 rating?
Hope this helps!