Your flow misses a critical point. You can have a long pause after FaceID, but before tapping. This means that you can, say, authenticate while the grocer is ringing up each item, sit there until they finish, and only then tap.
Pull phone out → double-click wallet button → Authenticate face → Pause for a long time → Hold next to reader → done.
Pull phone out → double-click wallet button → Authenticate face → Pause for a long time → Hold next to reader → done.