Inny pomysł, TimeOut każdego SqlCommand jest również kontrolowany indywidualnie, więc możesz kontrolować go za pomocą właściwości CommandTimeOut.
command.CommandTimeout = 120;
Jednak sprawdziłbym plan wykonania, aby zobaczyć, gdzie marnuje się lub zabiera zasoby bazy danych, sugeruję to tylko do eksperymentu, a nie na produkcji.