Do I need to sand oil-based polyurethane before applying epoxy?
A light sanding is recommended. UltraClear Bar & Table Top Epoxy adheres to oil-based polyurethane and you don't need to sand the poly off, but scuffing the gloss gives the epoxy the best bond. Once the poly is fully dry, lightly sand the surface with 220–320 grit sandpaper, wipe away all of the sanding dust with acetone and a clean rag, and let the surface dry completely before you begin.
Sanding doesn't replace the seal coat. Even on a flat, sanded poly surface you still brush on the epoxy seal coat before pouring the flood coat. The seal coat is what prevents air bubbles from escaping the surface and rising into the flood coat. One gallon covers about 48 sq. ft. as a seal coat or 16 sq. ft. as a 1/8" flood coat; use the coverage calculator to size your order: https://www.bestbartopepoxy.com/pages/epoxy-calculator
This applies to oil-based poly only. Epoxy will not adhere to water-based polyurethane. If that's what is on your surface, apply 3 coats of an oil-based poly over it, let it dry, then prep and pour as above.
UltraClear Art & Craft Epoxy should also be fine over oil-based poly, but test a small area first. Poly isn't a common base under Art & Craft Epoxy the way it is under Bar & Table Top Epoxy.