These phrases are similar but they have slightly different meanings. It’s hard to explain because it depends on the situation, but here are some examples:
“I have a soft spot for her personality” sounds strange. Usually people use “soft spot” for something more general or for cute things, like “I have a soft spot for puppies” or “I have a soft spot for girls with brown eyes”. Normally you don’t use it for something specific, and just means you really like or prefer certain types of things (usually types of people or types of animal). You can say “I love all dogs but I have a soft spot for dogs with floppy ears” but you would NOT say “I have a soft spot for this dog’s floppy ears”.
To be a sucker for something means you can’t resist. You can say “I’m a sucker for expensive jewelry”. This doesn’t just mean you LOVE expensive jewelry. It means when you see expensive jewelry, it’s hard for you to RESIST buying it. “I’m a sucker for chocolate” means it’s hard for me to resist buying/eating chocolate. It almost is like the object has power over your actions because you enjoy it so much.
Hopefully my explanation makes sense to you, I wrote it quickly haha. Maybe this will help you see the slight difference between “love”, “sucker for” and “soft spot”.