> To our surprise, we couldn’t find any example or description of someone doing this before. Is this such an uncommon problem or did we just not search in the right places?
This is one of the defining differences between Word2Vec and Fasttext. But fasttext incorporates these character vectors as part of calculating the semantic vector, so you can’t expect carg and cargo to end up being similar, but people have thought of it.
I don’t think partial search is that uncommon, but I don’t think it is usually solved by using vector representations similarly to word vectors. It seems like what you are looking for is usually accomplished by edit-distance / Levenshtein distance