Две причины приходят на ум:
1. ШИМ от плэера попал в слышимый звуковой диапазон и прослушивается как свист. Это легко усечь с помощью осциллоскопа (даже софтового, через компьютерную звуковуху). Как устранить: установить в цепи выдачи стереосигналов на УЗЧ заградительные RC (а лучше - LC)-фильтры с частотой среза по верхней границе используемого звукового диапазона, но заведомо ниже частоты ШИМ.
2. Если вам частично помогло то, что вы называете "стабилизация питания" (а в действительности установка блокировочных конденсаторов большой ёмкости называется "развязкой по питанию"), то имеет смысл реально застабилизировать питание esp8266, Dfplayer и Ws2812, запитав каждый из них от отдельного 3-выводного стабилизатора, т.е. их понадобится 3 штуки. Блокировочные конденсаторы оставить, не убирать, и даже ещё добавить после каждого стаба. Поскольку на 3-выводных стабах падает часть питающего напряжения, надо будет также немного увеличить выходное напряжение от блока питания для компенсации этого падения (с запасом).