Haha, the AP is broken. Its does not use single TX seq (as required
by 802.11-1999 R2003, same as 802.11e for non-Qos data and bcast mgt)
for data and mgt packets. Your AP seems to use one TX seq for beacon
(99% of mgt packets) and another TX seq for data. That also explains
why using lower rate will have better result: number of retries is
reduced and duplication detection is performed only on retried
packets.
Please test following patch and see whether it makes the situation
better in 11g mode:
http://leaf.dragonflybsd.org/~sephe/skip_beacon.diff