Коллекции сериализуются особым образом, который учитывает только элементы коллекции, а не дополнительные свойства, добавленные в класс. Вам нужно обернуть коллекцию в другой класс, который не является коллекцией.
Это должно дать вам желаемый результат:
public class A<T>
{
[XmlAttribute("Name")]
public string Name {get; set;}
[XmlElement(typeof(T))]
public List<T> Items { get; set; }
}