Preheat oven to 350 degrees F.
In a large skillet, drizzle olive oil over medium heat. Add the onions and cook, stirring occasionally, until softened. Add the garlic and cook just until fragrant, 30 seconds to 1 minute.
Crumble in the fresh chorizo and cook, stirring often and breaking up with a spoon into small pieces, until browned, about 5 minutes. Stir in the chopped spinach and cook just until wilted. Remove from heat, drain any excess fat and water, and allow to cool.
Set aside about ½ cup of the shredded cheddar and mozzarella cheese.
In a large bowl, stir together the cream cheese, remaining cheddar and mozzarella, and mayonnaise until smooth. Mix in the cooled chorizo spinach mixture, then season with salt and pepper.
Transfer the mixture to one larger or multiple individual oven-safe baking dishes. Top evenly with the set-aside cheese.
Bake in preheated oven until the cheese is bubbly and golden,25-30 minutes.
Serve hot with toasted bread, crackers, or tortilla chips.