Yazılmış kodu paylaşmadan düzeltme bekliyorsun, bu ne kadar mantıklı sence? Decode hataları genelde dosya formatlarından kaynaklanıyor.
dosyayı açmak için kullandığın open fonksiyonuna argüman olarak errors='ignore' verirsen açma ihtimali artacaktır. yani
open(fullpath, 'r', errors='ignore')...