The point is enforcing their price discrimination practices. What airlines do is trying to extract as much profit as possible from each passenger. Ideally they want to sell the ticket at the highest price a person is ready to pay for it and the distance, costs, etc. aren't directly relevant (see also Why do hotel booking sites ask for the number of people? Does it matter how many I say?).
It might very well be that a ticket to Amsterdam is more expensive than a ticket to Frankfurt through Amsterdam (among other reasons because a direct flight is more comfortable and people are ready to pay a premium for it – on Chicago-Frankfurt, KLM would be competing with nonstop flights from Lufthansa and United so it has to be cheaper, not so on Chicago-Amsterdam).
Similarly, there are some more expensive fares that allow cancellation (or changes and stopovers) for free. So cancellation with the cheaper fare is arbitrarily restrictive so that KLM can sell the flexible one at a premium.
There are many ploys to use these differences to get cheaper tickets (hidden city ticketing, throwaway ticketing, fuel dumping, etc.) but airlines try to do what they can to discourage them, to protect their ability to set prices flexibly on different routes. What you are trying to do is actually a form of “hidden city ticketing”.