To make the meatballs arrange an oven rack on the top rung of the oven and preheat to 400F. In a large bowl, combine the panko and egg and set aside.
Heat the oil in a large frying pan over medium-high heat. Add the onion and garlic and season with salt and pepper. Cook, stirring occasionally, until tender but not browned.
Remove from the heat and add the chipotle, cumin, and oregano and stir to combine. Transfer to the bowl with the egg mixture. Add the remaining ingredients and mix well with your hands. Form scant tablespoon-sized balls and place on a rimmed baking sheet (you should have about 50 meatballs).
Bake meatballs on the top rack of the oven until browned and firm, about 20 minutes.
To make the soup heat the oil in a large stockpot over medium-high heat. Add the onion, season with salt and pepper and cook for 5 minutes or until tender but not browned.
Add the jalapeños and garlic and cook, stirring occasionally, until vegetables are tender, about 2 minutes more. Add the stock and tomatoes and bring to a boil.
Reduce heat to a simmer and add the baked meatballs and any juices on the baking sheet. Simmer, covered, about 1 hour or until soup is infused with meaty flavor. Season with salt and pepper and stir in the chopped cilantro.
Divide cooked rice among the bowls then top with a handful of baby spinach. Ladle soup over the spinach and serve with a squeeze of lime.