An update for those interested.
I determined that my node was in fact connected correctly and accepting inbound peers, however, bitnode.io was automatically detecting my ipv6 ip which was apparently not open for port forwarding, when I manually input my ipv4 ip it detected me with no problem.
I was getting inbound connections before (alot of them) but they would all last a few seconds to a few minutes and none stayed connected for long.. after following the commenters advice and limiting the number of connections and the total bandwidth these connections became far more stable. Presumably the pi hardware is simply not sufficient to maintain a good connection with many peers so limiting it allowed for stable connections with a few, but I cannot be sure of this hypothesis.