How come the words monkey /ˈmʌŋki/ and donkey /ˈdɒŋki, ˈdɔŋki/ don't rhyme? What is their derivation? Or perhaps they do rhyme, depending on where one is from.
The Oxford English Dictionary has this to say about donkey:
A recent word, apparently of dialect or slang origin. As the original pronunciation apparently rimed with monkey (whence the spelling), suggestions have been made that the word is a derivative of dun adj. (cf. dunnock hedge-sparrow), or more probably, a familiar form of Duncan (cf. the other colloquial appellations, Dicky, Neddy).
I'm inclined to accept dun as the source. Again the OED on dun:
Of a dull or dingy brown colour... like the hair of an ass...
The OED quotes sources for dun, such as:
1562 J. heywoord Proverbs and Epigrams (1867) 139 The dun Asse hath trode on both thy feete.
But dun was also what the OED calls a quasi-proper name for any horse and quotes Chaucer:
c.1386 Manciple's Prologue 5 Ther gan our hoost for to Iape and pleye, And seyde, sires, what Dun is in the Myre.
Turning to the OED on the word monkey:
Of uncertain origin. .. it is not unlikely that the proper name may represent an otherwise unrecorded Middle Low German (1100-1600AD) moneke, Middle Dutch (1150-1500AD) monekijn, a collquial word for monkey and that this may have been brought to England by show-men from the continent. The MLG and MDu word would appear to be a diminutive of (with suffix -ke, -kijn (see -kin)) some form of the Roman word which appears as early modern French monne (16-17th century), Italian monna (earlier mona)...
The OED doesn't speculate where the Roman/Italian word came from, but it has carried down into modern Spanish where the word for monkey is mono. The word man according to the OED includes old forms such as mon and monne. Whether the author of this entry didn't want to buy into Darwinian debate, or there's a good philological reason to discount any link between the words man and monkey I'll leave to the experts.
The suffix -kin, which appears to be the origin for -key in both monkey and donkey simply signifies kin, as in relation, or a group having common attributes. Hence (I'd suggest) donkey is kin to dun (horse), and monkey is kin to that class of animals (apes and perhaps man) formerly described as mone, monne and mona.
But yes, returning to the observation from the head of my comments here, the OED holds that donkey used to be pronounced 'done-key' rhyming with monkey as we currently say it. This assertion is based on the following verse by John Wolcot (1738-1819) in his 1790 poem (under the pseudonym Peter Pindar) 'Rowland for an Oliver':
Who never dipp'd her muzzle in the Spring.
Thou think'st thyself on Pegasus so steady;
But, Peter, thou art mounted on a Neddy:
Or in the London phrase, thou Devonshire monkey,
Thy Pegasus is nothing but a Donkey.
Of course the rhyme may have been 'forced' rather than natural, but I simply quote the OED source in order to throw light on the OED's assertion.
As for the OED's speculation that the word donkey might have come from Duncan, a possible familiar name for an ass (but no references cited), it is interesting to speculate that the word could have actually moved in the other direction, that is to say Duncan being derived from dun-kin.
I pronounce donkey as dohn-ki, and monkey as muhn-ki, which don’t rhyme. I have never heard them be pronounced another way, but it seems like other people pronounce them in a way that is different from mine, so depending on how you say them they could rhyme. If you wanted to use them for lyrics in a song then you might be able to make them rhyme by pronouncing them differently, and I’m sure you would be understood. I used Oxford Languages for the derivation of donkey, which says, “late 18th century (originally pronounced to rhyme with monkey): perhaps from dun, or from the given name Duncan” so I think you would be understood if you pronounce it in a way that rhymes with monkey. Maybe I am in the minority of people who pronounce them differently.