К сожалению, на СИ не пишу, но может быть другой алгоритм попробовать, если с этим проблемы? Например, так: проходим файл 2 раза, на первом проходе ищем максимальное количество заглавных букв, содержащихся в словах (просто число!), а на втором — выводим слова, содержащие найденное количество указанных букв. Как встречаем такое слово, так сразу и выводим. Не?