Вообще, конечно, странно, что браузеры, способные отобразить страницу в большинстве кодировок, в том числе и data:text/plain;charset=cp1251,%EF%F0%E8%E2%E5%F2 не дают использовать свои возможности в javascript. У FileReader есть метод readAsText, принимающий в качестве второго параметра кодировку, но каким должен быть читаемый Blob, я так и не разобрался.
Если нет желания использовать библиотеки, можно раскодировать в лоб
var cp1251 = 'ЂЃ‚ѓ„…†‡€‰Љ‹ЊЌЋЏђ‘’“”•–—�™љ›њќћџ ЎўЈ¤Ґ¦§Ё©Є«¬®Ї°±Ііґµ¶·\
ё№є»јЅѕїАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя';
var str = '%EF%F0%E8%E2%E5%F2'.replace(/%(..)/g, function(s, p) {
p = parseInt(p, 16);
return p < 128 ? String.fromCharCode(p) : cp1251[p - 128];
});