Taking idea from similar well-known puzzle about burning rope, we can use
without any measuring tool, and without eyeballing how much the guava has been finished.
First, divide the parrots into 4 groups of 3 parrots each. Then take 3 guavas, and give one each for the first three groups. Then let each group of 3 parrots eat the guava at the same time. In case (a) the group who finished first must contain the special parrot. In case (b) it's the one finished last. If all finish at the same time, it must be at the fourth group of 3 parrots.
Now we have a group of 3 parrots which we know must contain the special parrot. Similar to previous step, take 2 guavas, let one parrot eat one each. If they finish at the same time, the special parrot is the third one. Otherwise, we can know which parrot depends on case (a) or case (b) based on which one finishes first.
(This assumes one guava can be eaten at the same time by multiple parrots, which, at the time of this writing, hasn't been clarified in the question, but also not forbidden).
If eating at the same time is forbidden, then in the first step we can simply rotate the guava in the group of 3 after it has eaten about a third (doesn't have to be exact, the rotations don't even have to be done at the same time for all groups). The point is to let each parrot in the group have some of the guava. If there is any special parrot in the group, the total time to finish the guava will be different. For example, we can rotate the guava to the next parrot in the group every 5 seconds. As long as it takes more than 10s for any parrot to finish a guava, this will work.
Additional note: upperbound for the answer would be 12 guavas, since we can just give one each, and see which one finishes in different time. So any answer should be less than 12.