How to use Private Key to import BTC funds from external address to Counterwallet address?

Counterparty doesn’t support Trezor so I don’t know how to send from Trezor (or sweep from Trezor).

You’d have to check with Trezor community or support.

Maybe you can create a raw Bitcoin transaction with embedded XCP (assuming you have the private key from Trezor) and broadcast from Trezor. Watch out for change address and other troubles - if you find a way best to try on testnet first. (You can create a wallet using Counterwallet on testnet, then get some testnet BTC to it, run the Burn command to get XCP, then you can send that BTC to testnet address of Trezor).

About create send tx: