Is it possible to seemlessly switch an incomming cell phone call to an asterisk server? That is, create a phone app that would read incoming calls and answer them with an asterisk end point also connected to the same device? Similarly, could you spoof the current device’s phone number as the caller ID number of an attached endpoint?
No, you would have to work with the cell network provider to do any kind of transfer and it wouldn’t be seamless to the other party.
Yes you can send out any caller ID you want from Asterisk as long as your upstream provider supports you sending that caller ID. Many providers limit you to only placing calls using the caller ID of numbers ported to them to reduce fraud.