Finally I've found the reason for this strange behaviour:
A timer interrupt occurs while configuring the timer. So the solution is to disable interrupts during timer configuration and to clear the timer interrupt flag.
With this everything works fine now.
The timer setup looks like this:
cli();
// Setup TMR2: interrupt every 25ms
TCCR2B = 0; // stop the timer and reset WGM22
TCCR2A |= (1 << WGM21); // enable timer2 CTC mode with top in OCR2A
OCR2A = 194; // set compare match register of timer 2
TCNT2 = 0; // initialize counter value to 0
TCCR2B |= (1 << CS22) | (1 << CS21) | (1 << CS20); // 1:1024 prescaling for timer 2
TIFR2 |= (1 << OCF2A);
TIMSK2 |= (1 << OCIE2A);
sei();
Thanks for any suggestions!