ANCOVA violating assumptions


The data I'm looking to analyse is vigilance data from monkeys. I need to investigate which factors affect the different types of vigilance. The first category I'm looking to investigate is "no vigilance" and therefore this is my dependent variable. This data includes a fair few 0's.

The factors I'm looking to compare are:

Name of monkey (7 different individuals)
Month (Feb-Dec)
Activity (Resting, feeding, grooming, being groomed).
Position (Central or edge of group)
Height (From 0-12 metres)
Number of individuals within 5 metres (I think goes as high as 9).

I've put all these into SPSS as an ANCOVA, with name, month and activity as factors. Position (numbered 1 or 0), height and number of individuals are covariates.

The reason I have a problem is due to the variation in variance being too high. The Levene's test is very strongly significant. When I investigate no vigilance vs each factor separately in a one-way anova all but name are also significant with the Levene's test. I also had a look at the variance myself and as an example in the category grooming there is 5x less variance than resting. So it's definitely a problem.

Does anyone have an idea how to get around this variance issue? I've tried logging the dependent variable but it gets the same results (and actually makes the data less normal). Maybe there's some different test I could be using which is more robust?

Many thanks