Short version: /n/ cannot trigger liaison in French. This is probably not liaison, but assimilation of an /s/ present because this is the "numeral" version of dix and not the determiner.
As you probably know, there are multiple pronunciations of dix and six possible in French, as detailed in this answer and this official page from the OQLF (Office québécois de la langue française), with some alternatives corroborated in various threads here, here, here, here, and valuably in this book.
(I won't attempt to sift through and delineate who exactly says which variation.)
They are /di/, /dis/, and /diz/ (and corresponding for six). In broad lines, the usage is:
/dis/ when it's used as a numeral/pronoun, the "on its own" case. For example:
Combien d'invités ?
/di/ or /diz/ when it's used as a determiner (sometimes vaguely described as an adjective).
This is the kind where we can get liaison or not. Hence, /di/ before a consonant:
Ça va prendre combien de temps ?
Dix minutes. /di/
But /diz/ before a vowel, activated by liaison:
Combien d'invités ?
Dix invités. /diz/
Actual usage is not as straightforward as that schema, for multiple reasons.
First, not everyone agrees on the status it has in each situation. As the OQLF page implies in one example, is "x pour cent" a determiner + noun or some kind of numeral?
Dix pour cent. /di/ or /dis/
Even the unambiguous cases can differ by speaker. For example, before a month name starting with a consonant, the author of the answer linked above says /di/ yet dix is a pronoun here.
Le dix mai. /di/ or /dis/
They can also be in contrastive distribution according to emphasis, as attested below by Feelew!
Informative: Il y avait dix voitures dans la cour. /di/
Surprised: Il y avait dix voitures dans la cour ! /dis/
Even the numeral can be pronounced [diz] if the /s/ is assimilated. That is, the voicing of a nearby sound can override the voicelessness of [s] and yield [z]. This can even overlap with the above. The OQLF page lists the following type of alternation, but does not clarify the question: Does the option with [diz] result from liaison of /di/ or assimilation of /dis/?
Le dix avril. /dis/ or /diz/
We can even see these interact; just the other day at the store I heard this very clear exclamation of a contrastive emphasis dix [dis] subsequently assimilated to [diz] :
Dix dollars ! [dizdɔlaʀ]
17, 18, 19
There are three compounds involving dix, as you know: dix-sept, dix-huit, dix-neuf.
What is the status of dix in these compounds? We would be tempted to say that numerical compounds are made of all numerals and not determiners. Let's check...
For dix-sept, two of the dictionaries I checked offer /di(s)sɛt/ and one offers /dis.sɛt/. This strongly suggests that /dis/ is the original pronunciation here. If the first /s/ is optional, it's because double-length consonants are usually not phonemic in French, so it's deleted.
For dix-huit, we unfortunately have a wash, because /diz/ can arise from either original lexeme, as we saw above.
For dix-neuf, the /diz/ is telling. It's before a consonant, so there's no way liaison could occur. Therefore it was /dis/ in the deep form. (In fact, some speakers insist on /s/ even in the surface form.)
So how did [diz] arise as the surface pronunciation in [diznœf]?
Probably because of assimilation from the [n], which is voiced. Nasals are very sonorant; the air is almost as unrestricted as for a vowel. (As you noted, /n/ in other languages sometimes activates liaison, and in English and other languages it can be syllabic. Nasals can even be "sung".)
Hence, we can expect the voicing on /n/ to be strong enough to assimilate [s] to [z].
Linguistics appendix: liaison difficulties
A French phonology researcher whose linguistics course I took discussed the hypothesis that liaison is only triggered in French when the onset of the following syllable is empty. So this would exclude /n/.
If you're interested in odd cases of liaison that go beyond your question, read on. :)
As the professor went on to argue, that rule appears to exclude cases in which the onset is filled by a glide, e.g. /w/ or /j/:
Les ouaouarons /lewawarɔ̃/
Les yachts /lejɔt/
But what are we supposed to do with inconsistent cases where there is liaison?
Les oiseaux /lezwazo/
Les yeux /lezjø/
One proposal involves the fact that what we perceive as [w] could be an underlying /w/ (a consonantal glide) or an underlying /u/ (a vowel). The first applies to ouaouaron, where /w/ occupies the onset. The second applies to oiseaux, where the onset is empty and the nucleus contains the diphthong /ua/ which is realized [wa].
Whether the deep form has /w/ or /u/ is part of a word's lexical entry. So how do we explain how a given word ended up with one or the other? Perhaps we can invoke etymology: ouaouaron was borrowed from Wendat in the 17th century but oiseau is attested at least as early as the 12th. At some point the first sound in oiseau was presumably a vowel, but when French speakers heard ouaouaron for the first time, they heard the surface form with /w/. Since we can't unconsciously reverse-engineer foreign words to their deep form, the lexical entry in French simply included /w/.
A parallel argument could be constructed for yachts vs. yeux. (Also, if ouaouaron "American bullfrog" is unfamiliar, see below for the suggestion of ouate "wadding", though it behaves less consistently.)
There's always an explanation... even though we might not all agree on the plausibility. :)