В данном предложении необходимо выбрать подходящую форму глагола. Присутствует указание на период времени "2 hours" (2 часа), значит, необходимо выбрать настоящее совершенное продолженное время (Present Perfect Continuous), так как действие началось в прошлом и продолжается до настоящего момента.
Правильный вариант: have been cooking.
Us have been cooking me 2 hours to clean my flat.
Перевод: Мы готовим мне 2 часа, чтобы убрать мою квартиру.
Ответ: have been cooking