I also knew that Felix couldn't possibly have made such an egregious error.

Thanks for your trust...

I would propose the theory that the WW2 ships were named after their WW1 predecessors.
In the Imperial German Navy, the East Asia Squadron was noted for their gunnery expertise. At the start of the War, the squadron operated independently and realized that its base at Tsingtao, China was untenable. While it raided some of the French Southeast Asia territories, the presence of Allied (British/Australian/French/New Zealand) forces endangered its existence, so Spee decided to make his way to the western coast of South America.
It's presence noted, the British South Atlantic squadron was sent to "destroy" the German light cruisers, or to shadow them.... Unfortunately, the ships available to the Royal Navy were older cruisers with neither the firepower or speed to deal with the two light cruisers and supporting vessels. In the Battle of Coronel, the British flagship cruiser "Good Hope" was sunk in three salvos - one short, one long, and the third on the mark.
While there was a battleship, the Canopus, with 12-in guns, this was an older battleship, and its guns had only the same range as the German's smaller calibers.
In addition, at this time, the British Naval gunnery was not up to the standards of its foe, and many of the ships were manned by recently activated reservists.
However, a few weeks later, the two German light cruisers and other vessels met their fate. Only the Dresden escaped (with Lt (future Admiral) Wilhem Canaris aboard) , but was scuttled in a Chilean harbor to prevent its capture by the British.