This is not a bug, it’s the way ACF has always worked. There has never been anything in ACF that will remove old data if you delete a field. There have been many discussions about this, so I won’t go into it here
4 pages of comments here https://support.advancedcustomfields.com/forums/topic/flush-unused-custom-fields/