As a mother of 3 and 35 years old, I have to say there are a lot of things you and your husband can do to your stepdaughter. However, after reading all the comments and your frustration, as an outsider looking in, you have to know what's going on with your stepdaughter.
I know this sounds crazy, but really, that's what you need to do. I was in your stepdaughter's shoes over 10 years ago and truly, she's hurting inside and to be able to have her open up to you and your husband and have her do things that you would like for her to do (i.e. get rid of BF in NC and get a job). Ask her what she enjoys doing. Have her start volunteering at schools to see if that is what she really wants. When she isn't volunteering, you can ask her to get a part-time job and go to school part-time. That way she has options out there and she knows that you guys are willing to support her emotionally and somewhat financially.
When I say support her financially, you can give her an allowance for volunteering/going to school (i.e. give her gas money, feed her, give her a room to stay in). BUT also teach her how to manage her money as well as paying for "rent". You don't have to charge her hundreds of dollars (you can charge her something to live w/in her means) but charge her an amount she can use to help establish herself.
Yes she is 21 years old, however, you have to understand that she has been through a lot within the last five years. She moved out to be with a woman she didn't know and was turned away by her several times. She hasn't had the emotional stability nor the proper parental guidance that would allow her to make "reasonable" decisions. If you know the BF was abusive, you have to ask her about those things too. It will be hard, but as long as you and your husband make that effort to "know" her, she'll open up. Some people may think "she's just playing you guys and you should just let her make her own bed." But really, think about where she has been by herself and if you would want your own daughter to go through everything she has gone through.
My parents were tough, but showed me things that I now use with my kids. When I was going through what your SD experiencing right now, my Mom and I started a journal between the two of us and we would write things to one another...good and bad...constructive and destructive...happy and sad...loving and hurtful...but what the main thing that we did was communicated.
A lot of the kids that are in her age group have been spoiled to succeed with the help of their parents---my sister is the same exact way as her and I've been working with her for four years. She's made progress and that shows me and my parents that she's realizing the world can swallow you up quickly, but family will always be there to help you out of the water.
I know this is long winded, but sometimes tough love may not always be the solution. Find out what would work for you and your husband. Encourage her to do well, make good choices and if you choose to do a contract, make sure you do one with her to show her that you are making an agreement and commitment to each other to help her achieve her goals.
If she wants to get advice, she can truly always e-mail me or call if she needs to. I wouldn't mind helping you out! ;)
All my best,
P.S. I'm a military wife and reservist too! :)