1) how will the system distribute transactions to be processed (for that matter, how does it happen now)
nodes relay tx to their peers, eventually tx reach miners, miners place them into blocks and look for a solution (hash below target value). Nothing will change when the block subsidy goes to zero.
Miners are compensated by block subsidy + transaction fees. As the block subsidy declines (over the next 100 to 130 years) fees will become more important.
2) can you bypass fees altogether by using your own wallet and hashing to process the payment?
sure however understand it takes a significant amount of hashing power to solve a lock in a reasonable timeframe. There are 144 blocks per day or 4,320 per month (on average). You would need be able to solve 3-4 blocks per month to have high chance of ensuring you will solve at least 1 in 30 days (there is an element of luck). So you would need about 1/1000th of all the hashpower on the network. Currently the network is ~4 PH/s so we would be talking about 4 TH/s and that number will be higher in the future. Honestly it probably makes more sense to just pay the tiny tx fee.
3) will pools then cease to be viable?
Nope as above everything will be the same.
4) since fees will be based on byte size of transaction, what impact will using different bitcoin addresses for each transaction be versus nout having different ones?
No. Bitcoin works on the concept out inputs and outputs. The input for a tx is the output of a prior tx. Using 3 inputs from a single address takes up exactly the same amount of spaces as 3 inputs from different addresses.