Your code works, so how are you creating your object?
Code:
var obj:Object = new Object();
obj.Model = 'SomeModelNumber';
obj.EID = 1234;
obj.ItemID = 5;
obj.Size = null;
obj.iLength = 34;
obj.iWidth = 30;

trace(GenerateParamString(obj)); // {'Model':'SomeModelNumber', 'Size':null, 'EID':1234, 'iLength':34, 'ItemID':5, 'iWidth':30}

function GenerateParamString(obj:Object):String {
        var fullStr:String = "{";
        for (var key:String in obj) {
                fullStr +=  "'" + key + "':";
                if (obj[key] is String) {
                        fullStr +=  "'" + obj[key] + "', ";
                } else {
                        fullStr +=  obj[key] + ", ";
                }
        }
// remove last comma and space
        fullStr = fullStr.substr(0,fullStr.length - 2);
        fullStr +=  "}";
        return fullStr;
}