To make meatballs, combine all meatball ingredients (except the orzo) and mix well. Add the uncooked orzo, and mix again. Shape the meat mixture into 1 inch balls and set aside.
Combine the water, bouillon granules, Italian seasoning, garlic, onions and carrots in a 4 quart pot and bring to a boil over high heat. Reduce heat to low, cover, and simmer for 5 minutes or until the carrots start to soften.
Place the undrained tomatoes in a blender and puree until smooth. Add the pureed tomatoes to the simmering broth mixture and increase the heat slightly to return the mixture to a simmer.
Add the meatballs, a few at a time, to the simmering soup. Cover and simmer over low heat for 20 minutes. Add the orzo and increase the heat to medium. Cook covered for about 10 minutes or until the orzo is almost done. (Stir occasionally to prevent the orzo from sticking to the bottom of the pot.).
Add the zucchini and cook for 3 minutes more or until the zucchini is tender and the orzo is done. Add the spinach and cook for another minute or just until the spinach wilts. Serve hot.