Sì, come suggerito, puoi utilizzare orderByRaw() Quindi la tua query verrebbe trasformata come:
$result = Product::where("ProductCode", "LIKE", '%200%')
->orderByRaw('CHARINDEX('200', ProductCode, 1) DESC, ProductCode ASC')
->get();
Qui, presumibilmente, il nome del modello è Product per la tabella products .