For the rice: Heat a 3 1/2-quart Dutch oven over medium-high heat. Add the olive oil, shallots, garlic and salt. Cook until soft and fragrant, stirring often, about 2 minutes. Add the rice and toast for 2 minutes, stirring constantly. Add the white wine and soy sauce and cook, stirring often, until the wine is almost entirely absorbed. Combine the vegetable broth and 1 cup water in a measuring cup. Add 1/2 cup of the broth mixture to the pot and cook, stirring, until almost completely absorbed, about 4 minutes. Continue adding the broth mixture, 1/2 cup at a time, stirring constantly and allowing each addition to be absorbed before adding the next. Cook until the rice is tender but not mushy, about 20 minutes in all. Stir in the artichokes. Remove the pot from the heat and let cool for 15 minutes. Stir in the basil and then spread the rice out on a baking sheet to cool completely, about 20 minutes.
For frying: In a heavy-bottomed saucepan or Dutch oven over medium heat, heat the olive oil and vegetable oil until they register 350 degrees F on a deep-fry thermometer.
Set up a breading station with the flour, almond milk and breadcrumbs in separate, shallow containers. Using a small ice cream scoop, scoop about 2 tablespoons of the cooled rice mixture into your hands and gently roll into a ball. Dredge the rice ball in the flour, then in the almond milk and finally in the breadcrumbs, packing them firmly. Repeat with the remaining rice.
In batches of 4 or 5, fry the rice balls until golden brown on the outside and warmed through, about 3 minutes. Drain on paper towels.
Serve with marinara for dipping, if desired.