Given an order_items DataFrame with product, price, and qty, compute the quantity-weighted average price per product: sum(price * qty) / sum(qty), rounded to 2 decimals. A product whose total quantity is 0 yields None (no division by zero).
Return a dict {product: weighted_avg_or_None}.