Da come dici in realta' ti serve soltanto trovare i contratti che hanno data inizio >='2011-01-01' e <='2014-05-01'

la data fine infatti puo' essere:
prima del '2014-05-01'
oppure ancora in corso dopo il '2014-05-01'

quindi se fai....

where data_inizio between '2011-01-01' AND '2014-05-01'

poco importa sapere se e' in corso, finito entro il , oppure non finito entro il....