Sometimes it is necessary to rehome a dog. If you do not have the patience, finances, or skill with animals to train a dog to your specifications, it would probably be better off with someone else.
Sometimes people pick a dog that is not compatible with their lifestyle. Sometimes they pick a dog without any research. Sometimes dogs just come into people's lives with no preparation, and they're doing the best they can. Everyone makes mistakes. Nobody is perfect.
Dogs are not children because dogs are not human. Sometimes a dog "parent" does not have the communication skills to get across to the dog what they want/need it to do. If they can't, the dog is better off with a family who can give it the ability to please its owners.
Dogs who stay with families resentful/frustrated with their behavior problems end up neglected or abused. Better that they get given over to someone else, and I support the OP's decision to do that if necessary.
It sounds like she is trying hard to solve her problems, so I commend that too.