When people ask me for money, such as a homeless person, Girl/Boy Scout, checkout person asking about a donation to random charity, or whatever, I say "Sorry, not today". This implies that I've given in the past or will in the future, and am not interested in doing it again/right now. For most things not personal to you, they just want recognition of their question. Whether they accept this answer depends on how reasonable they are.
I realize that doesn't really work with friends and family, but in these situations, they should understand that you aren't "made of money". If they don't you can still answer with the same statement as above. If they are truly your friend or care, they'll understand. If not, then it might be time to rethink your relationship. It's not enough reason to let it go completely, but it might be an indication they aren't in your life for your benefit. There's always the possibility of turning that around, but it may not work. And this is getting off topic fast.
One thing you can try is "I know you're having a hard time too, but it would help me if you could help pay $X.XX for {fill in the blank}." You may have to remind them of this from time to time. A friend of mine was dating a girl that had more money than him. He wanted to pay for everything, but some of the things she wanted to do was outside of his budget, including eating out all the time. He finally asked her to help pay for things, which she agreed to, but after a while, it tapered off and stopped. When he reminded her, she started paying again, but it tapered off again, too.
Try to be consistent and eventually it should become a habit of people to help pay for things. It's great you want to help people, but it sounds like you need help, too. Just remember that you can't help others financially when you don't have anything to help with.
Also, you aren't a taxi/Uber/Lyft/etc. Even if you are, you should know those drivers get paid for what they do. Since you have a job and I would assume you want a life outside of ferrying people around, you should tell people that you can't help them all the time. It's hard to tell people "no", but it's something you need to learn. I used to be the proverbial "doormat", but I took control of that by saying "no". It took a while, but I eventually lost the guilt of not helping everyone all the time. Taking control of your life actually feels pretty good. Don't get me wrong, I still help when I can, and even when I should be doing something else, but I try to make that a conscious decision instead of an automatic reply.
Also note who you say to and how they react. I found that most people didn't think twice about me saying "no" and that the inevitable confrontation I thought was doing to happen never did. Well, at least with most people. There were problem people, and generally they didn't stick around long after I stopped helping them with "everything".
To help with this guilt and fear of a negative reaction, you can say "I'll help you in a little bit, but I need to finish what I'm doing right now." If they need immediate help, they'll look for someone else. Doing this also puts forward the expectation that you have other things to do, too, and they aren't the most important part of your life, while still being willing to help. This works especially well if they actually interrupt what you are doing to ask for help. What you can do to make this more prominent is to actually be doing something when people ask for your help. Whether it's reading/writing a book, doing homework/taking night classes, having a hobby, or whatever, just make sure you let them know they are interrupting, if it's not absolutely obvious.
Giving them a time frame of when you'll be ready will help them determine if they need to find someone else to help them. "I'll he there in a little bit" can mean 5 min or an hour, so try not to use this unless you really don't know how long you'll be. If you do use this, add in why you don't know how long you'll be, such as "I just started gluing something together and (I'm not sure how long it needs to set before I can let go) {or} (I need to do a bunch of things all at once before it fully dries and I'm not sure how long that's going to take)". If you do know or can make a time frame work, tell them. "I'll be there in X minutes." It doesn't even have to be too accurate. If it's a short period, you don't generally need to give a reason. If it's a longer period and not obvious why it'll be longer, give a simple reason why. "I'll be there in 45 min, since I just started something and (need to make some real progress before I stop again) {or} (need to find a good stopping point)." If you miss that target by several minutes, either let them bring it up and apologize, or bring it up right away. "Sorry, that took longer than expected," should suffice either way.
Once you get the hang of this and you start losing the guilt, you can move on to having a relaxing dinner out (either with someone or on your own), taking a long bath, watching a movie, or doing something else to let your mind & body relax. Most people don't understand this is really important. Humans aren't robots and need to rest. This counts as "doing something", just like a hobby, working, or studying. When someone interrupts these activities, they are still interrupting something important, so use the same reasoning as when they interrupt studying, work, or whatever. You are busy at keeping yourself sane and healthy.
Doing all this frees you up to doing the giving you actually want to do. FYI, gifts at baby or wedding showers is expected, but still not a requirement. If people have a problem with that, it's their problem, not yours, so don't make it your problem. This will likely take time to work through, as well.
Giving is great, but you have to learn restraint, otherwise it's sucking you dry, as you are learning. Reasonable friends, family, charities, etc. will understand you can't give your money and time to everyone and everything all the time. Remind them of that.