Good question!
As I understand, just DHT onlysystem is not resistant versus flooding attack, as same as you described above. Of course, there is possible to add some mechanism to forget unused entries. For example, drop an unused entry, based on LRU algorithm. However, I think, malicious actor can flood lot to recent entries, and provide robotic "client requests" for them, to force keep them in the DHT. As result, these fake records will suppress valid ones, and DHT will drop them. As you see, such flood is kind of DoS attack, when flood force to drop valid records, and as result - stop service for them.
I think, there is only single way to protect DHT versus such flooding - is create financial barrier, when deploy entry into DHT costs some tiny amount of money. In this case, flooder must pay lot of money for his flood, and such attack would be costly for him.
For this purpose, DHT system can use ssomething like to SpamBat. System SpamBat is "postage stamps" system, initially developed for e-mail spam filtering. In this system, e-mail sender apply to an e-mail the "postage stamp" - cryptocurrency transaction, when some amount of coin is destroyed, i.e "burning". And e-mail recipient burns coin, if this e-mail is spam.
For this problem, there is possible to develop analogous system. For example, for publish some hash into DHT, sender also must to "burn" some coins, and insert into burning transaction the hash, which he wish publish. As result, such transaction would be "proof of burn receipt". And each DHT server can validate this "receipt" versus his own blockchain copy, and publish link, only if ticket is valid.
Of course, there is possible to develop somethin analogous, but common idea - sender must pay some amount. Tiny amount for "good sender", and big amount for flooder.