Heat olive oil in a wide-bottomed pan. Sauté onion until soft. Add garlic and cook until fragrant, about 30 seconds. Add tomatoes and sauté until softened, about 10 minutes. Add orzo, half-and-half, broth, and basil, cooking for 10 minutes on a low simmer. Stir in peeled shrimp and cook for 2 additional minutes. Remove from heat and let rest for 5 minutes before serving, during which time the shrimp will continue cooking.