Are incoming connections required for mining? I am setting up a RPi3 Mining node for fun. I know that it will have less than 8 connections that are outgoing.

I know that if I was able to configure my network and router to allow incoming connections on port 8333 it would make my node work better.

My question is whether the incoming connections is required in order for the node to mine at all.

Will the outgoing connections that I make allow those peers to send my node transactions as those nodes get them, or is incoming connections the only way to get transactions that can then allow my node to mine blocks?
Incoming connections are not required for mining. You only need some connectivity with the rest of the network. It does not matter how that connectivity is established.

You would need to use the getblocktemplate based mining interface, with dedicated mining software, as Bitcoin Core no longer has any built-in miner support since v0.13.