Hi Fred,
I can answer the 1st question only as I am not too clued up with mediaproxy module and server.
The pcscf_is_registered function is used to confirm that the UE you are sending the request from is actually registered to the IMS. If this is true, then the P-CSCF will assert the identity and forward the request to I-CSCF or S-CSCF, depending on state and request type. Normally the interface between UE and P-CSCF is via ipsec so it's almost a given that any traffic coming in on the ipsec pipe can be asserted. In the case without IPSEC however, there are various methods used to make sure the UE that is sending the request is actually registered to the IMS. There are a few algorithms that can be configured to check - ie you can check the contact host and port (this is only works for invites as MESSAGEs don't have contact headers generally), then you can check the received IP and port to make sure it's coming from a currently registered contact that used the same IP:PORT combination, etc, etc.
Alternatively you could remove the check and pass the request onto the S-CSCF without asserting (not per std though) and then challenge all "cost incurring" requests with a 407 on the S-CSCF.... One limitatoin of not getting this working correctly is that you will not be able to use the Rx interface unless you can match a contact on the P-CSCF (ims_qos module).... but perhaps you are not interested in Rx interface at the moment?
If you send me a trace (pcap) and logfile I'll take a look as soon as I get a chance and let you know what the problem is.