Hello everyone !
This question might seems cringe/newbie but I feel like I can’t get any good advice on this so…
I’ve been doing cp for 2 years but I don’t know how to get better anymore.
My main goal is to get to IOI by the end of the year (it’s extremely easy in my country compared to other countries) but I feel like my training is not efficient at all.
I solved almost all recent Usaco Gold problems without struggling that much (usually I spent less than 30mn to get AC), I also practiced some cf 1900+, atcoder edu dp, some cses problems and a very few OI problems. The problem is that I feel like I can’t solve hard problems and that I have two main scenarios while solving a problem:

it’s easy, I figure out the solution really quickly because I solved a lot of problems like this before (I think I have too much standard knowledge compared to my problem solving skills…)

the problem feels impossible to me and I just can’t solve it even if I think for 10 hours (the only problem that I could effectively solve after thinking for a long time is Split from IOI 2019 and I just solved it because I randomly iterated through stupid greedy ideas).
This is especially true in Atcoder beginner contests where I can solve [A,E] or [A, F] quickly but then spend an hour on G without finding any idea…
Most people recommended me to solve past OI problems but usually when I try a problem and keep it in my mind for a few days I can’t solve it so I just give up.
Btw I know all the “problems solving tricks” like think of small cases, reduce some dimensions of the problem to make it easier…
Does anyone have a nice practice recommendation please ?
Here are my cp accounts if anyone is interested
Cf profile: bestial42centroids  Codeforces
Atcoder profile: yanndev  AtCoder
OI checklist: oichecklist.pythonanywhere.com/view/eaf19237962f4dbe27436eb83b1af017b6b0eae5
Thanks by advance for your help !