Some diagnostics I've made so far:
Routing table on ESXi looks fine to me, subnet 10.10.3.0/24 is directly connected to vmk1 interface:
[root@ESXi:~] esxcfg-route -l
VMkernel Routes: Network Netmask Gateway Interface
10.10.x.0 255.255.255.0 Local Subnet vmk0
10.10.3.0 255.255.255.0 Local Subnet vmk1
default 0.0.0.0 10.10.x.1 vmk0
ARP broadcasts seem to work fine when i ping the VM on the same vSwitch, IP is 10.10.3.222:
[root@ESXi:~] esxcli network ip neighbor list
Neighbor Mac Address Vmknic Expiry State Type
----------- ----------------- ------ -------- ----- -------
10.10.x.1 xx:xx:xx:xx:xx:xx vmk0 1164 sec Unknown
10.10.3.222 xx:xx:xx:xx:xx:xx vmk1 1196 sec Unknown
Also tried packet captures in both directions, both on vmk1 logical interface and vSwitch port this vmk is connected to, when I try to ping something outside the ESXi box (like Cisco switch logical interface) the packets get segmented for some reason, not sure if it works the way it's supposed to:
07:55:09.207828[5] Captured at PortInput point, TSO not enabled, Checksum not offloaded and not verified, length 60.
Segment[0] ---- 42 bytes:
0x0000: ffff ffff ffff 0050 566f c40e 0806 0001
0x0010: 0800 0604 0001 0050 566f c40e 0a0a 0304
0x0020: 0000 0000 0000 0a0a 036f
Segment[1] ---- 18 bytes:
0x0020: 0000 0000 0000
0x0030: 0000 0000 0000 0000 0000 0000
07:55:10.209978[6] Captured at PortInput point, TSO not enabled, Checksum not offloaded and not verified, length 60.
Segment[0] ---- 42 bytes:
0x0000: ffff ffff ffff 0050 566f c40e 0806 0001
0x0010: 0800 0604 0001 0050 566f c40e 0a0a 0304
0x0020: 0000 0000 0000 0a0a 036f
Segment[1] ---- 18 bytes:
0x0020: 0000 0000 0000
0x0030: 0000 0000 0000 0000 0000 0000
Networking is definitely not the brightest of my talents, but from what I see i'd suggest that L1 connectivity is fine (and thus replacing cables and/or physical NIC does not make sense) and it seems like a L2 issue with VMkernel interface only.
As i mentioned above, removing vSwitch1 with port groups and logical interfaces does not change anything, I just re-create the issue. Reinstalling the ESXi does not look like a rational idea from the start, but I don't mind doing it if it sounds reasonable.