Preheat oven to 400 degrees. Line muffin pan with baking cups or grease thoroughly.
Whisk together flour, sugar, baking powder, and salt in a medium bowl. In a separate bowl, use the same whisk to combine milk, oil, and egg. Pour the liquid ingredients into the dry ingredients, and combine with a wooden spoon only until moistened. The mixture should be lumpy.
In a small mixing bowl combine flour, sugar, and cinnamon. Cut in butter using 2 forks or pastry cutter. Keep going until the mixture looks like coarse crumbs. Set streusel topping aside.
To prepare filling, use an electric or stand mixer to beat together cream cheese, sugar, half an egg, and vanilla. Beat until smooth. Set filling aside.
Spoon one tablespoon of muffin mixture into each cup. Top with half of the rhubarb, and then a tablespoon of the cream cheese mixture. Spoon remaining muffin mixture into each cup, top with remaining rhubarb. Use a teaspoon to distribute the streusel topping on each muffin. Bake for 17-20 minutes. Let cool in pan for 5 minutes and serve warm.