Разница между «have» и «having» при описании кратковременных и продолжительных действий заключается в том, что каждый из этих глаголов обозначает разные процессы:
Таким образом, «have» подразумевает завершённое действие, а «having» — текущий процесс. 1
Выбор между этими глаголами зависит от контекста и желаемого смысла предложения. 2