In my experience watching & listening to people play through this game, I've noticed that the difficulty comes almost entirely from understanding the systems, not necessarily the fights themselves. You have a lot of things that you can exploit, you just have to figure out what they are. Between the possession mechanic & Remnants, access to dirt cheap EV & EXP training items, access to every competitive item in existence (from either the moment you enter Viridian or after Gym 1 depending on your starter), and frankly access to much stronger Pokemon at this point in the game than your opponents do... Your fights are largely won or lost before you even click battle.
The Azure Gym gauntlet can be tricky, for sure! You need to beat 4 Pokemon in a row, and then you get an optional full party heal. Then, you've gotta take down 8 straight. That can be tough if you're unprepared for Ice types! However, you could set it up so that you only need to fight 2 Pokemon before the party heal, and then 6 after...
The Elgyem -> Deoxys sequence is the hardest non-side challenge in the game. The Elgyem more than likely will take out at least one of your party members. If you're planning one team for both fights, it may feel like you don't have enough team slots. But if only you had remote access to your PC that you could use in between fights...
Again, I think the difficulty & frustration largely comes from not taking advantage of the most powerful tools the game gives you, both during and (more importantly, imo) before fights. I wish you the best of luck with the challenges you're struggling with, and I'm glad you're enjoying the game so far!!!