If you enable interrupts the code will jump to the interrupt vector whenenver an interrupt occurs. If you don't have a interrupt service routine at that location (or a jump TO an interrupt service routine) it won't work properly. The interrupt flags (like the TMR1IF) will get set whenever the cause of the particular interrupt happens/occurs but an actual jump to the interrupt vector will only occur if interrupts are enabled.

So, if you're actually going to use interrupts you need them enabled AND have an interrupt service routine. If you're just going to poll the interrupt flag then you can't have that particullar interrupt enabled.