First of all, I sympathize! Some kids just do not respond to the same techniques as others or that "the books" recommend.
Second, you were NOT being rough! You had to protect him and you grabbed him - that's fine. And on the plus side, your screaming alerted the older child that there was a problem, and he stopped. It didn't help stop your son, but it might have. That sort of thing can alert others in the area that there's a problem. So I wouldn't apologize for screaming or worry that you sounded like a lunatic.
I think that there may be some value in talking less to this particular child, and acting more quickly with less verbiage. When my child decided to ride out into the street with no helmet, I took his bike and hung it in the garage rafters where he could see it every day but not reach it. He whined of course, and I told him the bike is for big boys or responsible boys who wear helmets and stop at the driveway's edge. (We also live on a street with very little traffic, but it's the principle of the thing.) The bike was there for 2 weeks. For your son, you might try 4 days at his age.
Whether he understands the danger is immaterial. All he really has to understand is that he has to listen to Mom, no matter what. A friend of mine has a separate word for dangerous things: she says "FREEZE!" That's different than "Stop" as in "stop messing up the puzzle pieces" and "stop watching TV." "Freeze" is for no nonsense immediate response.
For cleaning up (as in the Play Dough example you gave), try giving a 5 minute warning (or setting a kitchen timer). You might even try one with a "5 minute warning" beep. When it's time to clean up, either he does it, or you put the play dough in the closet and it doesn't come out. When my son refused to clean his room (and of course I broke it down into small manageable tasks, not just a vague "clean up" directive), the "offending" toys went into the attic for a while. He got to keep his "comfort" items like stuffed animals, and he got to keep books - but Legos and hot wheels were a luxury only for kids who listen to Mom. Being sent to one's room is a lot more effective when there aren't a ton of fun toys in there.
I assume that you have some simple storage solutions to make clean up easy for a 3.5 year old - I used bins and baskets with a picture of the items on the outside, so it was clear (without my endless reminders) that Legos went in Bin 1 and cars/trucks went in Bin 2, that sort of thing. That helps cut down on the constant talking and verbal reminders, limiting you to 1 warning and 1 final directive.
So don't turn things into a battle. Give immediate consequences - he will understand those even if he is ignoring your words. My son also went through a head-butting phase and I responded with immediate consequences. If we were in line at McDonald's or at a park or at a play date, no matter what, I scooped him up and put him in the car seat immediately - so he was instantly restrained and kept from whatever he wanted to do. I simple said "No head butting, ever." After that, I did not talk to him for a solid 5 minutes. If possible, I left him alone in the car - where he could see me but not get my attention. I didn't respond to a tantrum or screaming - I just read a book or played a game on my phone, anything to ignore him.
So I would suggest that you switch your focus from "listen to me explain this" to "when I say X there will be immediate consequences that you won't like." He's getting a payoff from the screaming - negative or not, he's getting attention, and some kids just thrive on that. Deprive him of your attention, and make it more about what he loses than what he has to listen to over and over. He's tuning you out, so the repetition is just wasted effort and frustration for you, with no gain on the behavior side.
If he comes out of his room or the carseat and starts up again, just repeat the consequences. He'll get sick of it a lot sooner than you will if you can be more matter-of-fact and control your own anger (which I know is a huge challenge when you're so frustrated!) - he'll see that controlling screaming works more effectively. If you scream at his defiance, that's when the battle ensues. I know you're trying to scream OVER his screaming, but sometimes the exact opposite is more effective with some kids - just go "quiet" and non-verbal, and ultimately he will learn that no matter what, Mommy's going to win this!