You can keep your heart and grow a spine. There is nothing wrong with having boundaries, being assertive and saying, "No," on the appropriate occasions. If you develop or listen to your own intuition you will know when those occasions are. Sometimes it can be uncomfortable to stand up for yourself but it's not as uncomfortable as being a doormat.
I can identify with you. I have spent my life, having people run all over me. I learned to build up a wall and to finally have boundaries. You have to decide what you want and what you will put up with. Once you do figure it out, you will be able to say no and not feel bad about it.