As Falk notes, in order to prove that this problem is NP-hard, we need a reduction from an NP-hard problem. I'm going to use the problem of finding an independent set (i.e., finding a clique in the complement graph).
My reduction has two stages. The output of the first stage is a generalized instance with a non-binary alphabet. The output of the second stage uses a binary alphabet. Let G = (V, E) be the graph in which we are trying to find a large independent set. The output of the first stage is |V| words of length |E|. Let e = (v, w) be the ith edge. The letters in the ith position of each word are all different except for the words corresponding to v and w, which share a letter there. The size of the alphabet is thus |V| - 1. Two vertices are non-adjacent if and only if their words are at maximum distance, so we set the distance threshold to |V|.
In the second stage, we replace each letter by one of the |V| - 1 words of length |V| - 1 that has 1 "1" and (|V| - 2) "0"s and double the distance threshold to 2 |V|.
To solve small instances, I would recommend using Sam's reduction to the maximum clique problem and running the exponential-time Bron–Kerbosch algorithm to enumerate all maximal cliques, from which the maximum can be selected. (Why B–K and not the faster algorithms? The latter are more complicated and won't extend your reach very far.)