"Boyfriend" and "girlfriend" are weirdass words with weirdass implications (both the total words and their components), which is reason #81,462 why English is a lousy language in need of improvement.
Of course, a set of truly accurate terms for all forms of relationship would delve into the sort of specificity that would prevent us from using single nouns (unless we're speaking in German, I suppose), and that would make conversation difficult. I guess ideally, you'd have a series of scales from one to ten, denoting things like respect, enjoying each other's company, willingness to sacrifice on their behalf, romantic feelings, sexual feelings, committment, exclusivity... and you'd have to have different terms for either side of the relationship, since one assumes this would not be perfectly symmetrical. You'd also have to update your stats periodically, I suppose, hand them out to people on an index card if they ask.
Or hey, maybe just set up a smartphone app for it. An app where you can micromanage your feelings towards every other person in your life, updating it on the fly and redefining your relationships as you feel more or less affectionate.
...maybe "boyfriend" isn't so bad.