Should I model an ethernet message decoder with byte based instead of bit?
It depends, for example:


if you models a work over MII, you need to represent a packet as a stream of consecutive nibbles, nibble = a half of 8-bit byte = 4 bit;
if you models it over GMII, you can represent a packet as a stream of consecutive octets directly, octet = 8-bit byte;
etc...


If you models a work over a wide (N x 8 in the case you shown) parallel bus, such a bus must contain masking signals (N in the case of 8-bit byte) to speak out which byte(s) on the bus contain(s) information during a transfer cycle and which do(es) not.