Hi!
No, strictly speaking you do not need to use the encodingStyle attribute. The BP restricts the use of the encodingStyle attribute, as you can see here:
http://www.ws-i.org/Profiles/BasicProfile-1.1.html#SOAP_encodingStyle_Attribute
To specify the encoding for the input and output of an operation, use the <soap:body> element and the attribute use, as described here:
http://www.w3.org/TR/wsdl#_soap:body
1. Yes, literal should always be used. The trade off with encoded (as opposed to literal) is that you are more likely to encounter interoperability problems.
2. Again, don't use the encodingStyle attribute.
Best wishes!