For anyone reading this in 2025, I found an interesting and very easy solution after some time: Hard refresh your browser with CMD+Shift+R (or Ctrl+Shift+R).
If you look in your networks tab in the developer console, you might find what I did, which is that the browser is not even attempting to fetch the favicon.
The reason that adding it to public/images works for so many people is because this triggers the browser to load the favicon because it is a new resource in a new place. Interestingly, if you delete this favicon from public/images, and then re-add it with the same name, you will find that your favicon once again breaks.
It seems that the browser somehow caches the non-existence of your icon, and then decides not to fetch again when it is re-added. Performing a hard refresh with CMD+Shift+R forces the browser to re-fetch the icon, and everything works again.