Shared Storytelling isn't easy
Right now, you and your players are working towards very different things. You want balanced and challenging adventures. You also have a very clear vision of what you want the adventures to entail. They want to do amazing, creative, even zany things.
The problem you are having is the amazing things they would do would break the game balance of the adventures you’ve prepared. But I doubt your players really want there never to be a challenge — they just are champing to do some more of the shared storytelling.
You and your players are telling different stories. The best way out of this is for the stories both sides are telling to weave together more. That might mean things happening in your world that you think are a little goofy. My advice is you do your best to accept player input.
Commit to sharing the story
The good news is you’ve got passionate, creative players that want to take an active role in the game. Yes, that comes with its own challenges, but it can be way more rewarding than players that always just ask, "Is it time to roll initiative yet?"
You should let your players know you want to commit to shared storytelling, being more open to their creative ideas. What you need from them is acceptance that your hours of preparation usually cannot be entirely skipped. Some things will happen largely as the adventure you have prepared, because that is the adventure you prepared. See if they will agree to this deal.
If they really want a more open-ended game style where they can skip content, you could let them know that (like any sane person) you don’t want to throw away hours of work on a regular basis, so you would spend less time on preparation. The encounters would be a lot less fleshed out.
Instead of telling them "No" tell them "Yes, but."
Players tend to be much less upset when you let them try out their idea to limited success, than when you stonewall it. Keep things moving by following Tina Fey's 4 Rules of Improv.
That Bag of Holding trick? The rules say there’s a limited amount of air in the bag. So instead of just saying, "No (ya dummy) that won't work" you might have let them try it, and then use the limited air supply issue to make sure this trick is not overpowering.
In some instances, you can stall them by saying an idea will probably work, but they'll need some downtime to work out the kinks. For example, since the Bag of Holding has a soft bottom, you end up piled on top of each other and it’s just intolerable, and it’s dark, etc. The message is, that’s a fun idea and you can try it later, but right now it just won’t work because it would skip all the preparation.
Have Contingency Plans for Dodged Challenges
Your players like to try to be clever and duck out of challenges you present. Be ready for this, and let winning that race have its own challenges. That MacGuffin they won the race to with their teleport spell might be more heavily guarded than they’d been led to believe. They can still feel clever about beating the Zhentarim there, but now there are ogres. (OK?)
So, you’ll want to identify parts of the adventure that might get skipped, and prepare those a little less. Prepare the “goal” parts of the adventure more.
Use non-combat time to develop shared storytelling
If you let your players come up with clever solutions in downtime, they will feel less stymied, but you will still have time to adjust your adventures to accommodate their clever new tricks.
Taking the specific examples you happened to pick, your players seem to want to skip the overland travel part of their encounters. You might work out a new mode of transport — together with your players — that they think is cool and are happy to use. The key is getting input from everyone. This can happen in-game, where friendly NPC’s find out what the party might want, or out-of-game, where you just talk to the players about what they think might be cool.
Find fun that does not hinge upon your players doing what you want
You mentioned D&D is the lion’s share of the fun you are having right now. And you get disappointed when the players deviate from your intentions. But you should let go of trying to control them, because that will never work.
One way to relax about what the players are doing is to think of your campaign as something that has a life outside of the current game. You’ve basically created an adventure modules — with the amount of work you’ve already put into this, you really might think of putting your materials together as modules that might be distributed, or at least, replayed with a different group. The actions of your current players are just one thing that might happen in the modules.
Give yourself credit
I just wanted to add that, yes, your players sound like a bit of a handful. Seems that folks at the table are very into the game, sometimes a bit too much. Excited debates about what should be possible are part of many campaigns, but hours-long arguments that you don’t enjoy are not something you should have to put up with. (And guildsbounty, for one, offers a lot of good advice about getting them to stop.)
You are in your rights to say, “I’m done arguing about this. Let’s pack up for tonight and I’ll think about it.”
Best Answer
This punishes player fun more than character mechanics
Dependant on the AC of your enemies this curse is either a massive buff due to never missing, or a massive penalty due to never hitting. Either way it takes away the uncertainty and suspense of combat by making the result a formality.
In my experience a lot of the fun of combat is encapsulated in the thrill of the unknown. This curse takes away that unknown by removing the agency from a cursed characters turn. The curse has two states:
In both scenarios the mechanical penalty to the character is not as significant as the penalty to player enjoyment. In my opinion that makes this a bad curse.
A good curse challenges both the player and character to find a way to overcome, cure or circumvent the limitations imposed by the curse. Something that forces them to change their typical combat style or think outside the box. This curse doesn't do that. It is either good or it is bad, and there is (almost) nothing the player can do about it.