This answer quotes Rashi, who provides two explanations. The first argument seems textually thin - there are no other examples of calling someone by a tribe name based on their mother's side (see the single exception explained by the Radak, which doesn't actually attribute the tribe but describes their lineage). If anything, a simpler textual explanation is that he was a Levite paternally, and Judean from his mother's side. This explains the text's emphasis on his living not in his own tribe. This is the explanation given in the beginning of the talmudic discussion Gone Quiet quotes, as well as in the Yalkut Shimoni.
The second argument seems thin simply because according to the talmud, Samuel wrote the book of Judges and he significantly predates Manasseh. This in addition to it not having a textual basis.
An alternate explanation comes from the Metzudot and the Ralbag. Both he and the Radak explain that there are two cities called Bethlehem - one belonging to Zebulun and the other Judah (see Joshua 19:15). The text then emphasizes that the city under discussion is the Judean Bethlehem. As such, he explains that the words ממשפחת יהודה aren't actually referring to the person in question, but rather the city. So there is no question at all - he was a Levite living in the north, no contradiction to begin with.