How to tell whether an address is local or remote? For example, I have a BTC address. Can I (using RPC) get information is this address my local or remote?
The validateaddress RPC will do precisely that.  Here's sample output from a testnet address with Bitcoin Core 0.10.0:

{
    "isvalid" : true,
    "address" : "mgnucj8nYqdrPFh2JfZSB1NmUThUGnmsqe",
    "ismine" : true,
    "iswatchonly" : false,
    "isscript" : false,
    "pubkey" : "03bacb84c6464a58b3e0a53cc0ba4cb3b82848cd7bed25a7724b3cc75d76c9c1ba",
    "iscompressed" : true,
    "account" : "test label"
}


If the field ismine is false, the address doesn't belong to the currently-running Bitcoin Core wallet.